문제 3905 · 비트 I
도서관의 함께 읽기 목표
| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1000ms / 테스트 (언어별 보정은 아래 표) | 메모리: 측정하지 않음(브라우저 채점) | 0 | 0 | 0 | 0.00% |
문제
한 도서관에서는 참가자들이 매일 읽은 쪽수를 모아 공동 독서 목표에 도전하는 행사를 연다. 모든 참가자가 같은 책을 읽을 필요는 없다. 도서관은 행사 전체에서 읽은 쪽수의 합계가 목표 P쪽 이상이 되는지를 확인한다. 행사 시작 전의 누적 쪽수는 0쪽이며, 목표는 행사 도중 바뀌지 않는다. 행사 담당자는 첫째 날부터 N번째 날까지 매일 하루가 끝난 뒤 그날 인정된 쪽수를 기록했다. i번째 날의 기록 A_i는 그날 참가자들이 읽은 것으로 인정받은 쪽수의 합계이다. 참가자가 없거나 인정된 독서가 없는 날에는 0을 기록한다. 같은 책의 같은 쪽을 서로 다른 참가자가 읽었더라도 각 참가자에게 인정된 분량은 이미 그날의 기록에 반영되어 있다. 프로그램에서 책이나 참가자별로 기록을 다시 구분할 필요는 없다. 도서관은 매일 기록을 확인할 때 전날까지의 누적 쪽수에 그날의 기록을 더한다. 이렇게 구한 누적 쪽수가 P 이상이면 목표를 달성한 것으로 본다. 정확히 P쪽이 된 경우에도 달성이다. 하루 동안 어느 시각에 목표를 넘었는지는 기록하지 않았으므로, 목표 달성 여부는 오직 각 날짜의 기록을 모두 더한 뒤에 판단한다. 목표를 달성한 뒤에도 행사는 예정된 N번째 날까지 계속되며, 이후 날짜의 기록도 입력에 들어 있다. 그러나 안내판에는 목표를 처음 달성한 날짜 하나만 표시한다. 여러 날짜의 누적 쪽수가 모두 목표 이상이더라도 그중 가장 이른 날짜를 선택한다. 날짜는 행사 첫날을 1, 다음 날을 2로 세는 방식으로 표시한다. N번째 날까지의 기록을 전부 더해도 목표에 도달하지 못할 수 있다. 이때는 아직 달성한 날짜가 없다는 뜻으로 0을 표시한다. 목표 P는 양의 정수이므로 행사가 시작되기 전에 목표가 달성되는 경우는 없다. 주어진 일별 기록을 이용하여 안내판에 표시할 정수 하나를 구한다.
입력
첫째 줄에 정수 N과 P가 공백으로 구분되어 주어진다. 1 ≤ N ≤ 1,000이고, 1 ≤ P ≤ 1,000,000이다. 둘째 줄에 정수 A_1, A_2, …, A_N이 공백으로 구분되어 주어진다. 각 i에 대해 0 ≤ A_i ≤ 1,000이다.
출력
누적 쪽수가 처음으로 P 이상이 되는 날짜를 정수 하나로 출력한다. N번째 날까지 목표를 달성하지 못했다면 0을 출력한다.
예제 입력 1
5 25 7 0 9 12 4
예제 출력 1
4
예제 입력 2
4 20 5 5 0 9
예제 출력 2
0
예제 입력 3
3 8 8 0 8
예제 출력 3
1
힌트 펼치기
- 누적 쪽수와 목표를 비교하면서 날짜를 앞에서부터 확인한다.
관련 서재 장
알고리즘 분류
구현누적 합풀이 작성
연습 채점은 공개 테스트로 실행합니다. 인증 제출은 코드를 봉인한 뒤 새 입력을 실행하고 서버에서 출력을 대조하며 코드와 판정을 저장합니다.
풀이를 제출하면 여기에서 결과를 확인할 수 있습니다.
연습 기록은 이 브라우저에 최근 50개를 저장합니다. 인증 기록은 내 제출에서 확인하세요.
이 브라우저의 연습 기록
언어별 제한
테스트 케이스마다 새 전역에서 실행하며 준비 시간은 제외합니다. 시간 초과된 출력은 검사하지 않습니다. 브라우저·기기 성능에 따라 실행 시간이 달라집니다.
| 언어 | 엔진(버전) | 시간 제한 | 메모리 |
|---|---|---|---|
| javascript | 사용자 브라우저 JavaScript 엔진 (버전은 브라우저에 따라 다름) | 1000ms / 테스트 | 측정하지 않음(브라우저 채점) |
| python | Pyodide 314.0.7 (CPython 3.14 WASM) | 5000ms / 테스트 | 측정하지 않음(브라우저 채점) |