백준 11399 ATM 파이썬
접근방식
- 최솟값을 출력하기 위해서 시간이 저장된 리스트를 오름차순으로 정렬한다.
- 정렬된 리스트의 인덱스 0, 0 + 1, 0 + 1 + 2, … 를 더해서 출력값에 더해준다.
# 입력받기
import sys
input = lambda: sys.stdin.readline().rstrip()
n = int(input())
time = list(map(int, input().split()))
total = 0
time.sort()
for i in range(n):
total += sum(time[:i+1])
print(total)
해당 문제는 실버3레벨에 해당하므로 어렵지 않게 풀 수 있는 문제였습니다.
그리디와 정렬을 결합한 기초 문제로 적절한 것 같습니다.
알고리즘도 모든 것과 마찬가지로 꾸준한 연습과 이해를 바탕으로 실력이 향상합니다. Just do it & Keep steady
댓글남기기