알고리즘
[algorithm] 백준 14788 - 제 2회 IUPC는 잘 개최될 수 있을까? (파이썬)
hyuuny
2022. 8. 20. 00:01
📚 문제
입력
출력
예제 입력
7
36 3
9 70 15 13 19 20 11
예제 출력
3
🧑🏻💻 풀이 과정
- CTP 회원들의 볼펜의 수를 내림차순 정렬하자.
- 입력받은 총 회원의 수를 구하자(
m * k
) - 정렬된 볼벤의 수를 반복하며, 빌려줄 펜의 수(
pen_sum
)보다 총 회원의 수(total_member_sum
)가 더 많다면,pen_sum
에 볼펜의 수를 더하고cnt
를 1 증가시키자. - 반복을 마치고 펜이 부족하면
STRESS
, 부족하지 않으면cnt
를 출력하자.
def iupc(arr):
# 총 회원 수
total_member_sum = m * k
# 회원이 빌려줄 수 있는 볼펜의 수
pen_sum = 0
# 볼펜을 빌려줄 회원의 수
cnt = 0
for i in arr:
# 빌려줄 펜의 수보다 총 회원의 수가 더 많다면, CTP 회원의 펜을 추가로 빌려주자
if total_member_sum > pen_sum:
pen_sum += i
cnt += 1
else:
break
# 펜이 부족하면 STRESS, 충분하면 회원수 출력
print("STRESS") if total_member_sum > pen_sum else print(cnt)
n = int(input())
m, k = map(int, input().split())
iupc(sorted(list(map(int, input().split())), reverse=True))