chldkato

백준 13458 시험 감독 (파이썬) 본문

백준

백준 13458 시험 감독 (파이썬)

chldkato 2020. 4. 19. 15:24

https://www.acmicpc.net/problem/13458

 

13458번: 시험 감독

첫째 줄에 시험장의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 각 시험장에 있는 응시자의 수 Ai (1 ≤ Ai ≤ 1,000,000)가 주어진다. 셋째 줄에는 B와 C가 주어진다. (1 ≤ B, C ≤ 1,000,000)

www.acmicpc.net

나눗셈을 사용하지 않고 뺄셈만 하면 시간초과가 발생한다

 

1. 리스트 a에 각 시험장의 응시자 수를 저장한다

2. 총감독관은 반드시 1명 필요하기 때문에 우선 b를 빼준다

   이 때 음수가 되면 0으로 바꿔준다

3. 부감독관을 배치하기 위해 c로 나눈 몫을 ans에 더해준다

4. c로 나눳을 때 나머지가 있으면 1을 더해준다

import sys

input = sys.stdin.readline

n = int(input())
a = list(map(int, input().split()))
b, c = map(int, input().split())

ans = 0
for i in range(n):
    a[i] -= b
    if a[i] < 0:
        a[i] = 0
    ans += 1

    ans += a[i] // c
    if a[i] % c != 0:
        ans += 1

print(ans)

'백준' 카테고리의 다른 글

백준 12100 2048 (Easy) (파이썬)  (1) 2020.04.19
백준 3190 뱀 (파이썬)  (0) 2020.04.19
백준 14499 주사위 굴리기 (파이썬)  (0) 2020.04.19
백준 14500 테트로미노 (파이썬)  (0) 2020.04.19
백준 14501 퇴사 (파이썬)  (0) 2020.04.18
Comments