백준 문제풀이 11508 2+1세일

Kim. K.S·2021년 12월 28일
0

boj 11508 : 2+1 세일

문제 주소: https://www.acmicpc.net/problem/11508

난이도: silver 4

1.문제설명

  • 물건의 가격들이 주어진다.
  • 물건을 3개씩 묶어사면 3개중 가장 싼 물건은 공짜로 준다.
  • 이때 모든 물건을 최소 금액으로 살 때, 최소 금액은?

2.문제해결 아이디어.

  • 일단 비싼것부터 묶어서 사야된다. 그래야 안내는 금액을 최대화 시킬수 있음

3.문제접근법

  • 내림차순 정렬을 한다.
  • 3개씩묶었을 때 3번째원소는 돈을 내지 않아도된다
  • index % 3 == 2 라면 더하지 않고 넘어간다

4.특별히 참고할 사항

  • 없음

5.코드구현

N = int(input())
price = []
ans = 0
for i in range(N):
    price.append(int(input()))
price.sort(reverse = True)

for i in range(N):
    if i % 3 == 2:
        continue
    ans += price[i]

print(ans)
profile
시원한 맥주, 음악, 야구, 사진찍기를 좋아합니다.

0개의 댓글

관련 채용 정보