알고리즘
[구름톤 챌린지] Day 15 - 과일 구매(그리디)
motti
2023. 9. 3. 17:21
반응형
https://level.goorm.io/exam/195697/%EA%B3%BC%EC%9D%BC-%EA%B5%AC%EB%A7%A4/quiz/1
구름LEVEL
난이도별 다양한 문제를 해결함으로써 SW 역량을 향상시킬 수 있습니다.
level.goorm.io
문제
# 1개만 샀을때 가장 큰 값을 먼저 구매한다(딕셔너리를 새로 만들어서 1개당 가격을 구하고, 밸류로 정렬/ 여기서 딕셔너리는 1개당 가격 : 갯수)
# 그리고 최대가격을 넘어가면 스탑
n,k = map(int,input().split())
per_price = []
for _ in range(n):
p,c = map(int,input().split())
per_price.append((c//p,p)) # 포용감과 갯수
per_price = sorted(per_price, key = lambda x : (x[0],x[1]), reverse = True)
# print(per_price)
hap_c = 0
for a,b in per_price:
if k>=b:
k -=b
hap_c += a*b
else:
hap_c += a*k
break
print(hap_c)
1. 1개만 샀을때 가장 큰 값을 먼저 구매한다(딕셔너리를 새로 만들어서 1개당 가격을 구하고, 밸류로 정렬/ 여기서 딕셔너리는 1개당 가격 : 갯수)
2. 최대가격을 넘어가면 스탑
반응형