문제
유제품을 3개를 한 번에 산다면 그중 가잔 싼 것은 무료 나머지 두 개의 제품 가격만 지불한다
한 번에 3개를 사지 않는다면 할인 없이 정가 지불해야 한다
입력
첫 줄에 유제품수
두 번째 줄부터는 각 유제품의 가격
출력
n개의 유제품을 살 때 최소 비용을 출력한다
예제
(3,2,2) (3) 이렇게 구입한다
문제풀이
1. 정렬을 이용하여 큰 수부터 정렬한다
2. 입력받은 유제품 가격을 루프를 돌려 3의 배수가 아닐 때 그 유제품 가격을 더한다
코드
n=int(input())
data=[]
for i in range(n):
a=int(input())
data.append(a) #유제품 가격 저장
data.sort(reverse=True) #역정렬
answer=0
count=1
while count<=n:
if count%3!=0: #3의 배수가 아니면 그가격을 더한다
answer+=data[count-1]
count+=1
print(answer) #최종가격을 출력한다
반응형
'파이썬 문제풀이 > 그리드' 카테고리의 다른 글
[백준 파이썬] 2109 순회강연 (1) | 2024.10.24 |
---|---|
[백준 파이썬] 보물 1026 (0) | 2024.05.21 |
[백준 파이썬] 19598 최소 회의실 개수 (0) | 2024.03.07 |
[백준 1700 파이썬] 멀티탭 스케줄링 (1) | 2024.02.16 |
[백준 1789 파이썬] 수들의 합 (1) | 2024.02.08 |