문제 3366 · 비트 III
충전 완료 행 모으기
| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1000ms / 테스트 (언어별 보정은 아래 표) | 메모리: 측정하지 않음(브라우저 채점) | 0 | 0 | 0 | 0.00% |
문제
한 전기차 충전소는 하루 동안 발생한 충전 기록을 표 데이터로 보관한다. 운영 담당자는 이 표에서 정상적으로 완료된 충전 기록만 모아 간단한 일일 보고서를 만들려고 한다. 표의 각 행에는 충전기 번호, 처리 상태, 충전량이 이 순서대로 들어 있다. 원본 표는 쉼표로 열을 구분하는 CSV 형식으로 전달되며, 이번 자료에는 열 이름을 적은 머리글 행이 없다. 처리 상태는 DONE 또는 CANCEL이다. DONE은 충전이 정상적으로 끝났다는 뜻이고, CANCEL은 충전 도중 취소되었다는 뜻이다. 보고서에는 DONE인 행만 포함한다. CANCEL인 행에도 충전량이 적혀 있을 수 있지만, 그 값은 이번 보고서의 합계에 더하지 않는다. 충전량은 모두 정수이며 단위는 Wh이다. 소수 계산이나 단위 변환은 필요하지 않다. 보고서에 적을 값은 두 가지다. 첫 번째 값은 포함된 충전 기록의 개수이고, 두 번째 값은 포함된 모든 기록의 충전량을 더한 값이다. 같은 충전기 번호가 여러 행에 등장할 수 있으며, 각 행은 서로 다른 충전 기록을 나타낸다. 따라서 충전기 번호가 같다는 이유로 행을 합치거나 제외하지 않는다. 충전량이 0인 DONE 행도 정상적인 완료 기록이므로 개수에는 포함한다. 입력의 모든 행은 정해진 CSV 형식을 따른다. 쉼표 주변에는 공백이 없고, 따옴표나 빈 열도 없다. 행의 순서는 보고서 결과에 영향을 주지 않는다. DONE인 행이 하나도 없다면 완료 기록의 개수와 충전량 합계는 모두 0이다. 주어진 표를 읽고 보고서에 들어갈 두 값을 구하는 프로그램을 작성한다.
입력
첫째 줄에 기록 수 N이 주어진다. N은 1 이상 1,000 이하의 정수다. 다음 N개 줄에 각각 충전기번호,처리상태,충전량 형식의 CSV 행이 주어진다. 충전기 번호는 1 이상 100 이하의 정수이고, 처리 상태는 DONE 또는 CANCEL이다. 충전량은 0 이상 100,000 이하의 정수다. 정수는 불필요한 앞자리 0 없이 주어진다. 각 행에는 정확히 두 개의 쉼표가 있으며 공백은 없다.
출력
DONE인 기록의 개수와 해당 기록들의 충전량 합계를 순서대로 한 줄에 공백으로 구분하여 출력한다. 해당 기록이 없으면 0 0을 출력한다.
예제 입력 1
5 2,DONE,1200 1,CANCEL,500 2,DONE,0 7,DONE,850 1,CANCEL,0
예제 출력 1
3 2050
예제 입력 2
2 4,CANCEL,900 4,CANCEL,100
예제 출력 2
0 0
예제 입력 3
1 3,DONE,0
예제 출력 3
1 0
힌트 펼치기
- 각 행을 쉼표로 나눈 뒤 처리 상태가 DONE일 때만 개수와 합계를 갱신한다.
알고리즘 분류
구현집계풀이 작성
연습 채점은 공개 테스트로 실행합니다. 인증 제출은 코드를 봉인한 뒤 새 입력을 실행하고 서버에서 출력을 대조하며 코드와 판정을 저장합니다.
풀이를 제출하면 여기에서 결과를 확인할 수 있습니다.
연습 기록은 이 브라우저에 최근 50개를 저장합니다. 인증 기록은 내 제출에서 확인하세요.
이 브라우저의 연습 기록
언어별 제한
테스트 케이스마다 새 전역에서 실행하며 준비 시간은 제외합니다. 시간 초과된 출력은 검사하지 않습니다. 브라우저·기기 성능에 따라 실행 시간이 달라집니다.
| 언어 | 엔진(버전) | 시간 제한 | 메모리 |
|---|---|---|---|
| javascript | 사용자 브라우저 JavaScript 엔진 (버전은 브라우저에 따라 다름) | 1000ms / 테스트 | 측정하지 않음(브라우저 채점) |
| python | Pyodide 314.0.7 (CPython 3.14 WASM) | 5000ms / 테스트 | 측정하지 않음(브라우저 채점) |