문제 4093 · 비트 I
관측소 센서 덮개 정산
| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1000ms / 테스트 (언어별 보정은 아래 표) | 메모리: 측정하지 않음(브라우저 채점) | 0 | 0 | 0 | 0.00% |
문제
한 날씨 관측소는 주변의 소형 관측 지점에 일회용 센서 덮개를 공급한다. 센서 덮개는 모두 같은 종류이며, 한 개의 판매 가격은 P원이다. 관측소의 백엔드 담당자는 N일 동안의 입고와 주문 기록을 순서대로 처리하여 마지막 재고와 총 판매 금액을 계산해야 한다. 첫날 업무를 시작하기 전에는 센서 덮개 S개가 창고에 있다. 하루의 업무는 입고와 주문 처리의 두 단계로 진행된다. 먼저 그날 입고된 센서 덮개를 전부 창고에 넣는다. 그다음 그날 들어온 주문을 처리한다. 창고에 주문 수량 이상의 덮개가 있으면 주문 수량을 모두 판매한다. 재고가 주문 수량보다 적으면 남아 있는 덮개를 전부 판매한다. 판매한 수량만큼 재고를 줄이고, 판매한 수량에 P를 곱한 금액을 그날의 판매 금액으로 기록한다. 재고 부족으로 판매하지 못한 수량은 그날 업무가 끝날 때 취소된다. 취소된 수량을 다음 날의 주문에 더하거나, 나중에 입고된 물품으로 따로 배송하지 않는다. 따라서 다음 날에는 전날의 남은 재고와 다음 날에 새로 주어진 입고량 및 주문량만 사용한다. 입고량이나 주문량이 0인 날도 있으며, 이러한 날에도 같은 순서로 업무를 처리한다. 이 기록에서는 반품, 재고 손실, 배송비, 할인 및 외상 거래가 발생하지 않는다. 판매하지 않은 덮개에는 판매 금액이 발생하지 않으며, 창고에는 수량 제한이 없다. 재고와 모든 수량은 정수이고 덮개를 나누어 판매할 수 없다. N일의 업무를 모두 처리한 직후의 재고 수량과 N일 동안의 판매 금액 합계를 구하라. 판매가 한 번도 이루어지지 않았다면 총 판매 금액은 0이다. 모든 업무의 처리 순서가 정해져 있으므로 선택이나 동점 처리는 필요하지 않다.
입력
첫째 줄에 정수 N, S, P가 공백으로 구분되어 주어진다. 1 ≤ N ≤ 1,000, 0 ≤ S ≤ 1,000, 1 ≤ P ≤ 1,000이다. 다음 N개 줄의 i번째 줄에 i일의 입고량 A_i와 주문량 B_i가 공백으로 구분되어 주어진다. A_i와 B_i는 0 이상 1,000 이하의 정수다.
출력
N일 업무 종료 직후의 재고 수량과 총 판매 금액을 공백으로 구분하여 한 줄에 정수로 출력한다.
예제 입력 1
3 2 7 1 5 4 1 0 2
예제 출력 1
1 42
예제 입력 2
2 0 10 0 3 2 0
예제 출력 2
2 0
예제 입력 3
1 0 8 4 4
예제 출력 3
0 32
힌트 펼치기
- 매일 입고량을 재고에 더한 뒤, 현재 재고와 주문량 중 작은 값만큼 판매한다.
알고리즘 분류
구현시뮬레이션풀이 작성
연습 채점은 공개 테스트로 실행합니다. 인증 제출은 코드를 봉인한 뒤 새 입력을 실행하고 서버에서 출력을 대조하며 코드와 판정을 저장합니다.
풀이를 제출하면 여기에서 결과를 확인할 수 있습니다.
연습 기록은 이 브라우저에 최근 50개를 저장합니다. 인증 기록은 내 제출에서 확인하세요.
이 브라우저의 연습 기록
언어별 제한
테스트 케이스마다 새 전역에서 실행하며 준비 시간은 제외합니다. 시간 초과된 출력은 검사하지 않습니다. 브라우저·기기 성능에 따라 실행 시간이 달라집니다.
| 언어 | 엔진(버전) | 시간 제한 | 메모리 |
|---|---|---|---|
| javascript | 사용자 브라우저 JavaScript 엔진 (버전은 브라우저에 따라 다름) | 1000ms / 테스트 | 측정하지 않음(브라우저 채점) |
| python | Pyodide 314.0.7 (CPython 3.14 WASM) | 5000ms / 테스트 | 측정하지 않음(브라우저 채점) |