728x90
반응형
문제 링크
https://www.acmicpc.net/problem/2217
풀이
N = int(input())
ropes = []
answer = []
for _ in range(N):
ropes.append(int(input()))
ropes.sort(reverse=True)
for i in range(N):
answer.append(ropes[i]*(i+1))
print(max(answer))
처음엔 내림차순이 아니라 오름차순으로 정렬한 후, 리스트의 길이와 해당하는 값을 더해주고 카운팅과 조건문을 사용해서 반복했더니 시간 초과가 나왔습니다..
그래서, 다시 생각해보다가 내림차순으로 정렬한 후, 해당하는 값 * 리스트의 순서로 계산해 answer 리스트에 넣어준 뒤 max()로 최댓값을 출력했습니다.
728x90
반응형
'알고리즘 정복하기! > 백준 문제풀이' 카테고리의 다른 글
백준 10610번 Python / Greedy (0) | 2022.02.10 |
---|---|
백준 1929번 Python / Math (0) | 2022.02.10 |
백준 1026번 Python / Greedy (0) | 2022.02.10 |
백준 5565번 Python / Math (0) | 2022.02.10 |
백준 10870번 Python / Math (0) | 2022.02.10 |
댓글