

문제만 제대로 이해한다면 금방 해결할 수 있는 문제이다
마지막 줄에는 한 묶음당 살 수 있는 수량을 입력받게 되며, 해당 수량을 바탕으로 티셔츠와 펜을 부족하지 않게 구입해야한다
티셔츠의 경우 남아도 되고, 펜의 경우에는 한자루도 구입이 가능하기 때문에 이 점에 유의하여 코드를 작성해야한다
먼저, 티셔츠의 경우 한 묶음당 살 수 있는 최대 수량보다 사야하는 양이 더 작다면 한 묶음만 사도 된다
허나, 파이썬에서 // 연산자를 사용하게 되면 나머지는 버리고 몫만 저장하기 때문에 +1을 해주어야한다
여기서 주의할 점은 모든 경우에 +1을 하면 안된다 예제처럼 5장을 사야하는데, 한 묶음이 5장인 경우에는 한 묶음만 사도 된다
그렇기 때문에 나머지가 0인 경우에는 따로 계산하는 로직을 작성해야한다
펜의 경우에는 인원수에 맞게 구입하면 되고, 개별구매도 가능하기 때문에 인원수//P, 인원수%P로 작성하면 된다
import sys
input = sys.stdin.readline
num = int(input())
shirt_size = list(map(int, input().split()))
pack = list(map(int, input().split()))
result = 0
for T in shirt_size:
if T % pack[0] == 0:
result += T // pack[0]
else:
tmp = T // pack[0] + 1
result += tmp
#print(result)
print(result)
print(num//pack[1], num%pack[1])


'Baekjoon' 카테고리의 다른 글
| [Baekjoon]백준 2776 암기왕(실버 4) - Python (0) | 2025.04.21 |
|---|---|
| [Baekjoon]백준 15829 Hashing(브론즈 2) - Python (0) | 2025.04.19 |
| [Baekjoon]백준 7568 덩치(실버 5) - Python (0) | 2025.04.15 |
| [Baekjoon]백준 9375 패션왕 신해빈(실버 3) - Python (0) | 2025.04.13 |
| [Baekjoon]백준 16953 A → B(실버 2) - Python (0) | 2025.04.11 |