백준_정렬_알바생강호_1758_파이썬

석준·2022년 8월 24일
0

백준_문제풀이

목록 보기
20/30
post-thumbnail

✅문제 요약

  1. 손님들은 입구에 들어갈 때, 자기가 커피를 몇 번째 받는지에 따라 팁을 준다.
  2. 각 손님은 강호에게 원래 주려고 생각했던 돈 - (받은 등수 - 1) 만큼의 팁을 강호에게 준다.
  3. 만약, 위의 식으로 나온 값이 음수라면, 강호는 팁을 받을 수 없다.
  4. 손님의 순서를 적절히 바꿔 강호가 받을 수 있는 최대 금액을 출력

✅문제 풀이

팁의 금액이 적은 손님은 뒤에서 처리해 주어도 음수가 아니라 0원이 되기 때문에
단순히 내림차순 정렬을 한 후 결괏값 += 팁 - (순서+1) 해서 출력하였다

import sys
input = sys.stdin.readline

n = int(input())
tips = [int(input()) for _ in range(n)]
tips.sort(reverse=True)
answer = 0
for i in range(n):
    answer += tips[i] - i if tips[i] - i >= 0 else 0

print(answer)
profile
파이썬 서버 개발자 지망생

0개의 댓글