haju__log

[python][백준/BOJ] 13458번 : 시험 감독 본문

카테고리 없음

[python][백준/BOJ] 13458번 : 시험 감독

haju 2023. 9. 4. 22:58

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

 

✅ 틀린코드 

import sys

n=int(sys.stdin.readline())
l=list(map(int,sys.stdin.readline().split()))
b,c=map(int,sys.stdin.readline().split())

result=0
for i in range(len(l)):
    tmp=0
    if l[i]%b==0:
        if l[i]//b==1:
            result+=1
        else:
            result+=1
            tmp=l[i]-b
    else:
        result+=1
        tmp=l[i]-b
    if tmp!=0:
        result+=tmp//c
        if tmp%c!=0:
            result+=1
print(result)

✅ 반례 

<input>

1

1

2 1

 

<answer>

1

 

<output> 

0

 

✅ 최종 코드 

  • 만약 시험감독해야할 학생 수가 감독관이 감독할 수 있는 수보다 작은 경우의 조건을 추가해주었다. 
import sys

n=int(sys.stdin.readline())
l=list(map(int,sys.stdin.readline().split()))
b,c=map(int,sys.stdin.readline().split())

result=0
for i in range(len(l)):
    tmp=0
    if l[i]%b==0:
        if l[i]//b==1:
            result+=1
        else:
            result+=1
            tmp=l[i]-b
    else:
        if l[i] < b:
            result += 1
            continue
        result+=1
        tmp=l[i]-b
    if tmp!=0:
        result+=tmp//c
        if tmp%c!=0:
            result+=1
print(result)