문제 3326 · 비트 IV
충전기의 두 계기판 기록
| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1000ms / 테스트 (언어별 보정은 아래 표) | 메모리: 측정하지 않음(브라우저 채점) | 0 | 0 | 0 | 0.00% |
문제
한 전기차 충전소의 충전기에는 지금까지 공급한 전력량을 누적해서 보여 주는 계기판이 있다. 계기판의 숫자는 한 차량의 충전이 끝나도 0으로 돌아가지 않는다. 다음 차량은 앞선 차량의 충전이 끝났을 때 표시된 숫자에서 이어서 전력을 공급받는다. 따라서 한 차량이 사용한 전력량은 충전 전후의 계기판 기록을 이용해 계산해야 한다. 이번 차량이 충전을 시작하기 직전의 계기판 값은 S이고, 충전을 마친 직후의 계기판 값은 E이다. 두 기록 사이에는 이번 차량에만 전력이 공급되었다. 계기판 값이 줄어들거나 처음으로 돌아가는 일은 없으므로 E는 항상 S 이상이다. 이번 차량에 공급한 전력량은 E에서 S를 뺀 값이다. 충전소는 전력량 한 단위마다 P원의 요금을 받는다. 이번 충전에서는 공급한 전력량이 정수 단위로 기록되며, 단위보다 작은 전력량이나 반올림은 고려하지 않는다. 충전하는 동안 단위 요금 P는 바뀌지 않는다. 따라서 사용한 전력량에 대한 요금은 공급한 전력량과 단위 요금을 곱하여 계산한다. 여기에 충전 연결 한 번당 받는 기본요금 B원이 더해진다. 기본요금은 이번 연결에 대해 정확히 한 번만 부과된다. 전력을 전혀 공급받지 않아 시작 값과 종료 값이 같더라도 기본요금은 부과된다. 기본요금 자체가 0원인 경우도 있으며, 할인이나 세금 등 다른 금액은 더하거나 빼지 않는다. 충전소는 이번 차량의 영수증에 최종 결제 금액 하나를 표시하려고 한다. 시작 계기판 값 S, 종료 계기판 값 E, 전력량 한 단위의 요금 P, 기본요금 B가 주어질 때 최종 결제 금액을 구하는 프로그램을 작성한다. 모든 금액은 원 단위의 정수이며, 출력할 때 통화 기호나 자릿수 구분 기호를 붙이지 않는다.
입력
첫째 줄에 정수 S, E, P, B가 공백으로 구분되어 주어진다. 0 ≤ S ≤ E ≤ 1,000이며, 1 ≤ P ≤ 1,000, 0 ≤ B ≤ 1,000이다.
출력
이번 차량의 최종 결제 금액을 원 단위의 정수로 한 줄에 출력한다.
예제 입력 1
124 139 230 500
예제 출력 1
3950
예제 입력 2
800 800 450 700
예제 출력 2
700
예제 입력 3
0 24 310 0
예제 출력 3
7440
힌트 펼치기
- 누적 계기판의 종료 값 전체가 이번 차량의 사용량은 아니다.
관련 서재 장
알고리즘 분류
사칙연산풀이 작성
연습 채점은 공개 테스트로 실행합니다. 인증 제출은 코드를 봉인한 뒤 새 입력을 실행하고 서버에서 출력을 대조하며 코드와 판정을 저장합니다.
풀이를 제출하면 여기에서 결과를 확인할 수 있습니다.
연습 기록은 이 브라우저에 최근 50개를 저장합니다. 인증 기록은 내 제출에서 확인하세요.
이 브라우저의 연습 기록
언어별 제한
테스트 케이스마다 새 전역에서 실행하며 준비 시간은 제외합니다. 시간 초과된 출력은 검사하지 않습니다. 브라우저·기기 성능에 따라 실행 시간이 달라집니다.
| 언어 | 엔진(버전) | 시간 제한 | 메모리 |
|---|---|---|---|
| javascript | 사용자 브라우저 JavaScript 엔진 (버전은 브라우저에 따라 다름) | 1000ms / 테스트 | 측정하지 않음(브라우저 채점) |
| python | Pyodide 314.0.7 (CPython 3.14 WASM) | 5000ms / 테스트 | 측정하지 않음(브라우저 채점) |