문제 3071 · 비트 IV
회의실 점검 기준 시간
| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1000ms / 테스트 (언어별 보정은 아래 표) | 메모리: 측정하지 않음(브라우저 채점) | 0 | 0 | 0 | 0.00% |
문제
한 사무실의 회의실 관리 담당자는 회의실을 일정 시간 이상 운영하면 장비 점검을 진행하려고 한다. 회의실에는 하루 동안 진행할 회의들이 순서대로 등록되어 있다. 담당자는 회의가 끝날 때마다 지금까지의 운영 시간을 확인하고, 점검 기준에 처음 도달한 회의가 몇 번째인지 알아내려고 한다. 회의는 등록된 순서대로 1번부터 N번까지 번호가 붙어 있다. i번 회의의 진행 시간은 D_i분이다. 모든 회의가 끝난 직후에는 다음 사용을 위한 정리 작업을 정확히 C분 동안 진행한다. 마지막 회의가 끝난 뒤에도 같은 정리 작업을 진행한다. 이 문제에서 운영 시간은 회의 진행 시간과 정리 시간을 합친 값이다. 회의 사이의 대기 시간이나 실제 시계상의 시각은 주어지지 않으며 계산에도 포함하지 않는다. 하루를 시작할 때 누적 운영 시간은 0분이다. i번 회의가 끝나고 그 회의의 정리 작업까지 마치면 누적 운영 시간에 D_i+C분을 더한다. 담당자는 이 시점에만 점검 기준을 확인한다. 회의가 진행되는 도중이나 정리 작업 도중에 기준을 넘더라도 별도로 확인하지 않는다. 해당 회의의 정리 작업이 끝난 뒤 확인한 결과로 그 회의의 번호를 판단한다. 점검 기준 시간은 T분이다. 누적 운영 시간이 처음으로 T분 이상이 되는 회의의 번호를 출력해야 한다. 누적 시간이 T분과 정확히 같아지는 경우도 기준에 도달한 것으로 본다. 이후의 회의에서도 누적 시간이 기준 이상일 수 있지만, 그중 가장 작은 회의 번호만 답으로 사용한다. 입력 순서를 바꾸어 더 빨리 기준에 도달하도록 회의를 재배치할 수는 없다. 모든 회의와 정리 작업을 마쳐도 누적 운영 시간이 T분보다 작다면 0을 출력한다. 실제 점검에 걸리는 시간은 계산하지 않으며, 점검 기준에 도달한 뒤 누적 시간을 초기화하지도 않는다. 주어진 순서대로 시간을 누적하여 최초의 기준 도달 위치를 구하면 된다.
입력
첫째 줄에 정수 N, T, C가 공백으로 구분되어 주어진다. N은 1 이상 1,000 이하, T는 1 이상 200,000 이하, C는 0 이상 60 이하이다. 둘째 줄에 N개의 정수 D_1, D_2, ..., D_N이 공백으로 구분되어 주어진다. 각 D_i는 1 이상 120 이하이다. 모든 시간의 단위는 분이다.
출력
각 회의의 정리 작업 직후를 기준으로 누적 운영 시간이 처음 T분 이상이 되는 회의 번호를 출력한다. 끝까지 기준에 도달하지 못하면 0을 출력한다.
예제 입력 1
4 75 5 20 15 25 10
예제 출력 1
3
예제 입력 2
3 100 0 10 20 30
예제 출력 2
0
예제 입력 3
1 15 5 10
예제 출력 3
1
힌트 펼치기
- 회의 시간과 정리 시간을 차례로 더하면서, 누적 시간이 처음 기준 이상이 되는 번호를 기록한다.
관련 서재 장
알고리즘 분류
반복문누적구현풀이 작성
연습 채점은 공개 테스트로 실행합니다. 인증 제출은 코드를 봉인한 뒤 새 입력을 실행하고 서버에서 출력을 대조하며 코드와 판정을 저장합니다.
풀이를 제출하면 여기에서 결과를 확인할 수 있습니다.
연습 기록은 이 브라우저에 최근 50개를 저장합니다. 인증 기록은 내 제출에서 확인하세요.
이 브라우저의 연습 기록
언어별 제한
테스트 케이스마다 새 전역에서 실행하며 준비 시간은 제외합니다. 시간 초과된 출력은 검사하지 않습니다. 브라우저·기기 성능에 따라 실행 시간이 달라집니다.
| 언어 | 엔진(버전) | 시간 제한 | 메모리 |
|---|---|---|---|
| javascript | 사용자 브라우저 JavaScript 엔진 (버전은 브라우저에 따라 다름) | 1000ms / 테스트 | 측정하지 않음(브라우저 채점) |
| python | Pyodide 314.0.7 (CPython 3.14 WASM) | 5000ms / 테스트 | 측정하지 않음(브라우저 채점) |