문제 3644 · 비트 III
서버 공동 목표 알림
| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1000ms / 테스트 (언어별 보정은 아래 표) | 메모리: 측정하지 않음(브라우저 채점) | 0 | 0 | 0 | 0.00% |
문제
한 게임 서버에서 이용자들이 함께 점수를 모으는 공동 목표 행사를 진행한다. 서버는 행사가 시작된 뒤 일정한 간격으로 기록을 남긴다. 기록에는 그 구간 동안 새롭게 얻은 점수만 적히며, 이전 구간에서 얻은 점수는 포함되지 않는다. 각 구간의 점수는 0 이상의 정수이다. 행사 시작 직전의 누적 점수는 0이다. 첫 번째 기록이 만들어지면 그 기록의 점수를 누적 점수에 더한다. 이후에도 기록을 시간순으로 하나씩 확인하면서 해당 기록의 점수를 더한다. 점수가 0인 기록도 하나의 기록으로 세며, 이런 기록을 확인한 뒤에는 누적 점수가 변하지 않는다. 기록 번호는 시간순으로 1번부터 N번까지 붙어 있다. 운영자는 누적 점수가 목표 점수 T 이상이 되는 순간 서버에 축하 알림을 표시하려 한다. 알림은 각 기록의 점수를 모두 더한 직후에만 표시할 수 있다. 따라서 한 기록이 나타내는 구간의 중간 시점은 따로 살펴보지 않는다. 누적 점수가 목표 점수와 정확히 같아지는 경우에도 목표를 달성한 것으로 본다. 축하 알림은 행사 전체에서 한 번만 표시한다. 여러 기록에서 누적 점수가 목표 이상이더라도, 처음 목표를 달성한 기록 번호만 필요하다. 목표를 달성한 이후의 기록도 입력으로 주어지지만 이미 정해진 알림 번호에는 영향을 주지 않는다. 모든 기록을 확인한 뒤에도 누적 점수가 목표보다 작다면 알림을 표시하지 않는다. 목표 점수와 시간순으로 정리된 N개의 기록이 주어질 때, 축하 알림을 표시할 기록 번호를 구한다. 목표 점수는 양수이므로 행사가 시작되기 전에 목표를 달성하는 경우는 없다. 끝까지 목표를 달성하지 못하면 기록 번호 대신 0을 출력한다.
입력
첫째 줄에 정수 N과 T가 공백으로 구분되어 주어진다. 1 ≤ N ≤ 1,000, 1 ≤ T ≤ 1,000,000이다. 둘째 줄에 각 기록의 점수 A₁, A₂, …, Aₙ이 시간순으로 주어진다. 각 Aᵢ는 0 이상 1,000 이하의 정수이다.
출력
누적 점수가 처음 T 이상이 되는 기록 번호를 출력한다. 해당 기록이 없으면 0을 출력한다.
예제 입력 1
5 12 3 0 4 5 9
예제 출력 1
4
예제 입력 2
4 10 2 2 2 2
예제 출력 2
0
예제 입력 3
3 7 7 0 1
예제 출력 3
1
힌트 펼치기
- 기록을 하나씩 확인하며 지금까지의 점수를 더한다.
관련 서재 장
알고리즘 분류
반복누적풀이 작성
연습 채점은 공개 테스트로 실행합니다. 인증 제출은 코드를 봉인한 뒤 새 입력을 실행하고 서버에서 출력을 대조하며 코드와 판정을 저장합니다.
풀이를 제출하면 여기에서 결과를 확인할 수 있습니다.
연습 기록은 이 브라우저에 최근 50개를 저장합니다. 인증 기록은 내 제출에서 확인하세요.
이 브라우저의 연습 기록
언어별 제한
테스트 케이스마다 새 전역에서 실행하며 준비 시간은 제외합니다. 시간 초과된 출력은 검사하지 않습니다. 브라우저·기기 성능에 따라 실행 시간이 달라집니다.
| 언어 | 엔진(버전) | 시간 제한 | 메모리 |
|---|---|---|---|
| javascript | 사용자 브라우저 JavaScript 엔진 (버전은 브라우저에 따라 다름) | 1000ms / 테스트 | 측정하지 않음(브라우저 채점) |
| python | Pyodide 314.0.7 (CPython 3.14 WASM) | 5000ms / 테스트 | 측정하지 않음(브라우저 채점) |