본문으로 이동
코드패스 by Devin.KR

문제 4019 · 비트 II

천문대의 가림판 높이

인증 제출 통계 · 5분마다 갱신 · 정답 비율 = 정답 제출 / 전체 제출
시간 제한메모리 제한제출정답맞힌 사람정답 비율
1000ms / 테스트 (언어별 보정은 아래 표)메모리: 측정하지 않음(브라우저 채점)0000.00%

문제

작은 천문대에서는 관측창 아래에 설치한 가림판을 위아래로 움직여 들어오는 빛의 양을 조절한다. 가림판의 높이는 0 이상 90 이하의 정수로 나타낸다. 높이가 커질수록 가림판이 더 높은 곳에 놓인다. 오늘은 자동 조절 장치를 점검하기 위해 목표 높이가 적힌 명령 N개를 차례대로 실행한다. 점검을 시작할 때 가림판의 높이는 P다. 장치는 명령 하나를 실행하는 동안 가림판을 최대 K만큼 움직일 수 있다. 현재 높이가 이번 명령의 목표 높이보다 낮으면 목표를 향해 높이를 올린다. 현재 높이가 목표 높이보다 높으면 목표를 향해 높이를 내린다. 두 높이의 차이가 K 이하라면 목표 높이에서 멈추고, 차이가 K보다 크다면 정확히 K만큼만 움직인다. 현재 높이가 이미 목표 높이와 같으면 움직이지 않는다. 각 명령에서는 이러한 이동을 딱 한 번 수행한다. 이동이 끝난 높이가 그 명령의 목표 높이와 같으면 해당 명령은 성공한 것으로 기록한다. 처음부터 목표 높이와 같아서 움직이지 않은 명령도 성공이다. 목표에 도달하지 못했더라도 추가로 이동하거나 같은 명령을 다시 실행하지 않는다. 바로 다음 명령으로 넘어가며, 다음 명령은 직전 명령이 끝난 높이에서 시작한다. 같은 목표 높이가 여러 번 연속으로 주어질 수도 있다. 이때도 각 명령을 따로 실행하고 성공 여부를 각각 기록한다. 명령 사이에는 가림판을 처음 높이로 되돌리지 않으며, 정해진 이동 외에 높이가 바뀌는 일은 없다. 모든 명령을 주어진 순서대로 실행했을 때 성공한 명령의 수와 마지막 가림판 높이를 구하는 프로그램을 작성한다.

입력

첫째 줄에 명령의 수 N, 한 명령에서 움직일 수 있는 최대 높이 K, 처음 높이 P가 공백으로 구분되어 주어진다. N과 K는 1 이상 1,000 이하와 1 이상 90 이하의 정수이며, P는 0 이상 90 이하의 정수다.
둘째 줄에 각 명령의 목표 높이 A_1, A_2, …, A_N이 실행 순서대로 공백으로 구분되어 주어진다. 모든 A_i는 0 이상 90 이하의 정수다.

출력

성공한 명령의 수와 모든 명령을 실행한 뒤의 가림판 높이를 공백으로 구분하여 한 줄에 출력한다. 성공한 명령이 없으면 성공한 명령의 수로 0을 출력한다.

예제 입력 1

5 10 20
35 25 50 40 15

예제 출력 1

2 30

예제 입력 2

4 1 0
0 0 1 1

예제 출력 2

4 1

예제 입력 3

3 2 10
20 0 20

예제 출력 3

0 12
힌트 펼치기
  • 현재 높이와 목표 높이를 비교해 한 번 이동한 뒤, 두 높이가 같은지 확인한다.

관련 서재 장

관련 장

출처: Devin.KR 자체 제작

알고리즘 분류구현시뮬레이션

풀이 작성

연습 채점은 공개 테스트로 실행합니다. 인증 제출은 코드를 봉인한 뒤 새 입력을 실행하고 서버에서 출력을 대조하며 코드와 판정을 저장합니다.

Python 기본 시간 제한 = 문제 시간 제한 × 3 + 2초. 문제별 예외는 아래 표에 반영됩니다. 표준 라이브러리만 지원합니다.

Ctrl+Enter: 연습 채점 · Tab: 들여쓰기 · Esc 후 Tab: 다음 요소로 이동. 언어별 초안은 이 브라우저에 저장됩니다. JavaScript 입력: require('fs').readFileSync(0, 'utf8'), readline 또는 input().

로그인하면 인증 제출을 사용할 수 있습니다.

풀이를 제출하면 여기에서 결과를 확인할 수 있습니다.

    연습 기록은 이 브라우저에 최근 50개를 저장합니다. 인증 기록은 내 제출에서 확인하세요.

    이 브라우저의 연습 기록

      언어별 제한

      테스트 케이스마다 새 전역에서 실행하며 준비 시간은 제외합니다. 시간 초과된 출력은 검사하지 않습니다. 브라우저·기기 성능에 따라 실행 시간이 달라집니다.

      언어엔진(버전)시간 제한메모리
      javascript사용자 브라우저 JavaScript 엔진 (버전은 브라우저에 따라 다름)1000ms / 테스트측정하지 않음(브라우저 채점)
      pythonPyodide 314.0.7 (CPython 3.14 WASM)5000ms / 테스트측정하지 않음(브라우저 채점)