728x90
https://www.acmicpc.net/problem/11399
11399번: ATM
첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000)
www.acmicpc.net
이번 주는 그리디 알고리즘이다.
그리디가 동적프로그래밍보다 쉽다고 생각한다.
그리디는 그냥 계속 최소 혹은 최대만 가져오면 된다고 생각하기 때문..
해당 문제도 그냥 정렬 후 가장 작은 값부터 차례대로 가져올 수 있도록 했다.
import sys
N = int(sys.stdin.readline().strip())
P = sorted(list(map(int, sys.stdin.readline().split())))
cur_time = 0
result = 0
for i in P:
cur_time += i
result += cur_time
print(result)
'알고리즘 > 그리디' 카테고리의 다른 글
백준 1715 카드 정렬하기 (Python) (1) | 2024.01.31 |
---|---|
백준 1946 신입사원 (Python) (1) | 2024.01.31 |
백준 16953 A → B (Python) (1) | 2024.01.31 |
백준 1931 회의실 배정 (Python) (0) | 2024.01.30 |
백준 1213 팰린드롬 만들기 (Python) (0) | 2024.01.30 |