문제 3163 · 비트 III
상영 기록 검수
| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1000ms / 테스트 (언어별 보정은 아래 표) | 메모리: 측정하지 않음(브라우저 채점) | 0 | 0 | 0 | 0.00% |
문제
한 영화관은 하루 동안 진행한 상영의 예매 기록을 모아 정산 자료를 만든다. 각 기록에는 해당 상영에서 판매할 수 있는 좌석 수 C, 처음 결제된 표 수 P, 결제된 표 가운데 취소된 표 수 R이 들어 있다. 취소된 표를 다시 판매한 내역은 없으며, 세 수는 모두 표의 개수를 나타내는 정수다. 하나의 기록은 하나의 상영을 나타내고, 서로 다른 기록은 독립적으로 처리한다. 자료를 옮기는 과정에서 잘못된 값이 들어갈 수 있으므로 합계를 구하기 전에 각 기록을 검증해야 한다. 정상 기록이 되려면 P가 0 이상 C 이하여야 하고, R이 0 이상 P 이하여야 한다. 이 조건을 모두 만족하는 기록만 정산에 사용한다. 좌석이 남았거나 표가 한 장도 팔리지 않은 기록도 조건을 만족하면 정상이다. 결제된 표를 모두 취소하여 P와 R이 같은 기록 역시 정상이다. 정상 기록에서 최종적으로 남은 표 수는 P에서 R을 뺀 값이다. 영화관은 모든 정상 기록의 최종 표 수를 더한 값을 알고 싶어 한다. 잘못된 기록은 어떤 값도 합계에 더하지 않고 제외한 기록 수만 하나 늘린다. 잘못된 값을 0으로 바꾸거나 좌석 수에 맞추어 줄이는 보정은 하지 않는다. 한 기록이 여러 조건을 어기더라도 제외한 기록 수는 하나만 늘린다. 주어진 순서대로 N개의 기록을 검사하여 최종 표 수의 합계와 제외한 기록 수를 구한다. 같은 값의 기록이 여러 번 나오면 각각 별개의 상영 기록으로 처리한다. 정상 기록이 하나도 없으면 최종 표 수의 합계는 0이다. 합계가 같은 상영을 고르는 작업은 없으며, 모든 정상 기록을 빠짐없이 더한다.
입력
첫째 줄에 기록 수 N이 주어진다. 다음 N개의 줄에 각 기록의 C, P, R이 공백으로 구분되어 주어진다. 모든 입력은 정수이며, 1 ≤ N ≤ 1,000, 1 ≤ C ≤ 300, -10 ≤ P ≤ 350, -10 ≤ R ≤ 350이다. 음수나 좌석 수보다 큰 값도 검증 대상이므로 입력에 포함될 수 있다.
출력
첫째 줄에 정상 기록의 최종 표 수 합계와 제외한 기록 수를 이 순서대로 공백으로 구분하여 출력한다.
예제 입력 1
5 80 60 7 40 41 0 25 10 10 90 30 -1 50 0 0
예제 출력 1
53 2
예제 입력 2
3 10 -1 0 20 15 16 30 31 2
예제 출력 2
0 3
예제 입력 3
2 1 1 0 300 300 300
예제 출력 3
1 0
힌트 펼치기
- 0 ≤ R ≤ P ≤ C를 만족하는 기록만 합계에 사용한다.
알고리즘 분류
구현조건문데이터 검증풀이 작성
연습 채점은 공개 테스트로 실행합니다. 인증 제출은 코드를 봉인한 뒤 새 입력을 실행하고 서버에서 출력을 대조하며 코드와 판정을 저장합니다.
풀이를 제출하면 여기에서 결과를 확인할 수 있습니다.
연습 기록은 이 브라우저에 최근 50개를 저장합니다. 인증 기록은 내 제출에서 확인하세요.
이 브라우저의 연습 기록
언어별 제한
테스트 케이스마다 새 전역에서 실행하며 준비 시간은 제외합니다. 시간 초과된 출력은 검사하지 않습니다. 브라우저·기기 성능에 따라 실행 시간이 달라집니다.
| 언어 | 엔진(버전) | 시간 제한 | 메모리 |
|---|---|---|---|
| javascript | 사용자 브라우저 JavaScript 엔진 (버전은 브라우저에 따라 다름) | 1000ms / 테스트 | 측정하지 않음(브라우저 채점) |
| python | Pyodide 314.0.7 (CPython 3.14 WASM) | 5000ms / 테스트 | 측정하지 않음(브라우저 채점) |