https://www.acmicpc.net/problem/13458
사칙연산을 활용하는 문제입니다.
우선 문제부터 요약하면, N개의 시험장에 학생들이 들어있습니다. 이 때, 학생들을 총감독관 1명과 부감독관 여러명을 이용하여 감시하려고 할 때, 필요한 감독의 총 수를 return해야 합니다. 이 때, 총감독관은 시험장마다 반드시 한명 있어야 하고, 부감독관은 없거나 여러명일 수 있습니다.
<Solution>
우선 각 시험장의 응시자 수는 항상 1보다 크거나 같으므로, 총 감독관 1명은 항상 존재합니다.
총감독관이 감당 가능한 학생수를 뺀 이후에도 감독이 필요하다면
(남은 학생수) // (부감독관이 맡을수 있는 학생수) 를 더해주고 이 때
(남은 학생수) % (부감독관이 맡을수 있는 학생수) 가 0보다 크다면, 1명을 추가적으로 더해주면 됩니다.
실제 구현은 아래와 같습니다.
import sys
N = int(sys.stdin.readline().rstrip())
num_ppl = list(map(int, sys.stdin.readline().rstrip().split()))
B, C = list(map(int, sys.stdin.readline().rstrip().split()))
ans = 0
for ppl in num_ppl:
ans+=1
ppl-=B
if ppl<=0:
continue
ans+= ppl//C
if ppl%C != 0:
ans+=1
print(ans)
반응형
'코딩테스트 > Python 문제풀이' 카테고리의 다른 글
[백준] 별 찍기 - 11 (0) | 2022.07.06 |
---|---|
[백준] LCS (0) | 2022.07.06 |
[백준] A와 B (0) | 2022.06.29 |
[백준] 조합 (0) | 2022.06.29 |
[백준] 트리의 순회 (0) | 2022.06.29 |