여니의 취준 준비/코딩테스트 (Python)

[16678] 모독 In python

여니's 2022. 1. 30. 20:32

https://www.acmicpc.net/problem/16678

문제에서 주어진 그대로

for문을 사용하여 구현하였으나

시간초과 흠...

 

그럼 어찌해야하나.. 

 

n = int(input())
array = sorted(list(int(input()) for _ in range(n)))
answer = 0
for num in range(n):
    array = [array[i] - 1 for i in range(n)]
    if array[num] >= 1:
        answer += array[num]
print(answer)

 

변수 t를 이용하여

손쉽게 해결할 수 있었다. 

t가 모든 국회의원을 모독해서 각각의 명예 점수를 1씩 감소시키는 데 사용되는 변수다.

n = int(input())
array = sorted(list(int(input()) for _ in range(n)))
answer = 0
t=1
for num in range(n):
    # array = [array[i] - 1 for i in range(n)]
    if array[num] >= t:
        answer += array[num]-t
        t+=1
print(answer)

'여니의 취준 준비 > 코딩테스트 (Python)' 카테고리의 다른 글

[2312] 수 복원하기 in python  (0) 2022.02.12
[2473] 세 용액 in python  (0) 2022.01.31
[20127] Y - 수열 in python  (0) 2022.01.30
[1722] 순열의 순서 in python  (0) 2022.01.29
[1890] 점프 in python  (0) 2022.01.26