구름톤 챌린지 15일차 - 과일 구매
📜 문제
✏️ 입력
✏️ 출력
💡 풀이
그리디 알고리즘으로 풀 수 있는 이번 문제는 3주차에서 비교적 쉬운 문제였다.
P(과일 가격), C(포만감)을 입력 받고, 각 과일의 조각마다 가지는 포만감을 value라고 정해 fruit 리스트에 한 번에 넣었다.
그리고 가격은 싸면서 포만감이 높아야하기 때문에 value를 기준으로 내림차순 정렬을 했다.
N, K = map(int, input().split()) #N:과일의개수, K:가진돈
fruit=[]
cnt = 0
for i in range(N) :
P, C = map(int, input().split()) #P:각 과일의 가격, C:포만감
value = C // P
fruit.append([P, C, value])
fruit.sort(key=lambda x : x[2], reverse=True) #내림차순 정렬
for i in range(N) :
if K >= fruit[i][0] :
cnt += fruit[i][1]
K -= fruit[i][0]
else :
cnt += (fruit[i][1] // fruit[i][0]) * K
K = 0
print(cnt)
728x90
'📚 Algorithm > 9oormthon Challenge' 카테고리의 다른 글
[구름톤 챌린지 - 9oormthon Challenge] Day 13 발전기 2 - Python 파이썬 풀이 (0) | 2023.08.31 |
---|---|
[구름톤 챌린지 - 9oormthon Challenge] Day 9 폭탄 구현하기 2 - Python 파이썬 풀이 (0) | 2023.08.24 |
[구름톤 챌린지 - 9oormthon Challenge] Day 8 통증 - Python 파이썬 풀이 (0) | 2023.08.24 |
[구름톤 챌린지 - 9oormthon Challenge] Day 7 구름 찾기 깃발 - Python 파이썬 풀이 (0) | 2023.08.24 |
[구름톤 챌린지 - 9oormthon Challenge] Day 6 문자열 나누기 - Python 파이썬 풀이 (0) | 2023.08.22 |