문제 3365 · 비트 IV
버스 안내판의 누적 거리
| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1000ms / 테스트 (언어별 보정은 아래 표) | 메모리: 측정하지 않음(브라우저 채점) | 0 | 0 | 0 | 0.00% |
문제
한 버스 노선에서는 출발지부터 지금까지 이동한 거리를 안내판에 표시한다. 버스가 출발할 때 안내판의 값은 0이다. 이후 버스는 정해진 순서대로 N개의 구간을 지나며, 각 구간을 모두 지난 직후 그 구간의 길이를 안내판의 값에 더한다. 구간 사이에서 안내판을 초기화하는 일은 없으며, 버스가 이동한 거리가 줄어드는 일도 없다. 운행 담당자는 안내판의 값이 기준 거리 K 이상인 상태로 끝난 구간이 몇 개인지 확인하려 한다. 이를 위해 각 구간을 마칠 때마다 안내판의 값을 딱 한 번 확인하고, 그 값이 K 이상이면 확인 횟수에 1을 더한다. 기준 거리와 정확히 같은 경우도 횟수에 포함한다. 한 구간 안에서 기준 거리를 지나쳤더라도 구간 중간에는 확인하지 않으며, 구간을 마친 순간의 값만 사용한다. 일부 구간은 같은 장소에서 대기하는 구간이므로 길이가 0일 수 있다. 이런 구간도 다른 구간과 마찬가지로 하나의 구간이며, 끝난 직후 안내판을 확인한다. 이미 기준 거리에 도달한 뒤 길이가 0인 구간을 지나면 안내판의 값은 그대로지만 확인 횟수는 늘어날 수 있다. 반대로 출발 직후의 값 0은 어떤 구간도 끝난 상태가 아니므로 확인 대상에 포함하지 않는다. 각 구간의 길이가 운행 순서대로 주어진다. 전체 운행에서 조건을 만족한 확인 횟수를 구한다. 조건을 만족한 구간이 하나도 없으면 답은 0이다. 거리의 단위는 모두 같으며, 입력에 등장하는 거리와 구간 수는 모두 정수다.
입력
첫째 줄에 구간 수 N과 기준 거리 K가 공백으로 주어진다. 1 ≤ N ≤ 1,000, 1 ≤ K ≤ 1,000,000이다. 둘째 줄에 각 구간의 길이 D1, D2, ..., DN이 공백으로 주어진다. 모든 Di는 정수이며 0 ≤ Di ≤ 1,000이다.
출력
구간을 마친 직후의 누적 이동 거리가 K 이상인 구간의 개수를 정수 하나로 출력한다. 해당하는 구간이 없으면 0을 출력한다.
예제 입력 1
5 7 2 0 5 0 3
예제 출력 1
3
예제 입력 2
3 8 1 2 4
예제 출력 2
0
예제 입력 3
1 4 4
예제 출력 3
1
힌트 펼치기
- 구간을 하나 지날 때마다 누적 거리를 갱신한 뒤 기준 거리와 비교한다.
관련 서재 장
알고리즘 분류
구현반복누적 합풀이 작성
연습 채점은 공개 테스트로 실행합니다. 인증 제출은 코드를 봉인한 뒤 새 입력을 실행하고 서버에서 출력을 대조하며 코드와 판정을 저장합니다.
풀이를 제출하면 여기에서 결과를 확인할 수 있습니다.
연습 기록은 이 브라우저에 최근 50개를 저장합니다. 인증 기록은 내 제출에서 확인하세요.
이 브라우저의 연습 기록
언어별 제한
테스트 케이스마다 새 전역에서 실행하며 준비 시간은 제외합니다. 시간 초과된 출력은 검사하지 않습니다. 브라우저·기기 성능에 따라 실행 시간이 달라집니다.
| 언어 | 엔진(버전) | 시간 제한 | 메모리 |
|---|---|---|---|
| javascript | 사용자 브라우저 JavaScript 엔진 (버전은 브라우저에 따라 다름) | 1000ms / 테스트 | 측정하지 않음(브라우저 채점) |
| python | Pyodide 314.0.7 (CPython 3.14 WASM) | 5000ms / 테스트 | 측정하지 않음(브라우저 채점) |