문제 3261 · 비트 IV
주차장 정산 로그 점검
| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 1000ms / 테스트 (언어별 보정은 아래 표) | 메모리: 측정하지 않음(브라우저 채점) | 0 | 0 | 0 | 0.00% |
문제
한 주차장의 운영 담당자는 하루 동안 모인 출차 정산 로그에서 특정 구역의 정상 처리 건수와 이용 시간 합계를 확인하려 한다. 주차장은 A, B, C의 세 구역으로 나뉘며, 각 로그는 정산을 시도한 구역, 처리 결과, 기록된 이용 시간을 담고 있다. 백엔드 프로그램은 담당자가 지정한 구역의 로그만 골라 간단한 집계 결과를 만들어야 한다. 로그 한 줄은 구역|결과|시간 형식이다. 세 항목 사이에는 세로줄 문자 |가 정확히 하나씩 있으며 공백은 없다. 구역은 A, B, C 중 하나이고, 결과는 OK 또는 FAIL이다. OK는 정산이 정상적으로 끝났다는 뜻이고, FAIL은 정산 처리가 끝나지 않았다는 뜻이다. 시간은 분 단위의 정수이며, OK 로그에서는 1 이상 1,000 이하이고 FAIL 로그에서는 항상 0이다. 집계할 때는 구역과 처리 결과를 모두 확인한다. 지정한 구역의 OK 로그 한 줄을 발견하면 정상 처리 건수를 1 늘리고, 그 로그에 적힌 시간을 이용 시간 합계에 더한다. 다른 구역의 로그는 결과가 OK여도 포함하지 않는다. 지정한 구역의 FAIL 로그 역시 건수와 시간 합계에 모두 포함하지 않는다. 각 줄은 서로 독립적인 정산 기록이다. 내용이 완전히 같은 줄이 여러 번 나와도 각각 별개의 기록으로 계산한다. 입력에는 차량 번호가 없으며, 같은 차량의 기록인지 추측하거나 중복을 제거하지 않는다. 로그가 기록된 순서도 집계 결과에 영향을 주지 않는다. 로그는 1개 이상 1,000개 이하로 주어진다. 모든 로그를 확인한 뒤 정상 처리 건수와 이용 시간 합계를 이 순서대로 출력한다. 조건에 맞는 로그가 하나도 없다면 두 값은 모두 0이다.
입력
첫째 줄에 로그 개수 N과 집계할 구역 T가 공백으로 구분되어 주어진다. N은 1 이상 1,000 이하의 정수이고 T는 A, B, C 중 하나이다. 다음 N개 줄에 구역|결과|시간 형식의 로그가 하나씩 주어진다. 시간은 앞에 불필요한 0이 없는 십진수로 주어진다. OK의 시간은 1 이상 1,000 이하의 정수이고 FAIL의 시간은 0이다.
출력
지정한 구역의 OK 로그 개수와 해당 로그들의 시간 합계를 공백으로 구분하여 한 줄에 출력한다. 해당 로그가 없으면 0 0을 출력한다.
예제 입력 1
5 B B|OK|35 A|OK|70 B|FAIL|0 B|OK|35 C|OK|12
예제 출력 1
2 70
예제 입력 2
3 A A|FAIL|0 B|OK|18 C|FAIL|0
예제 출력 2
0 0
힌트 펼치기
- 각 로그를 | 문자로 나눈 뒤 구역과 결과를 함께 확인한다.
알고리즘 분류
로그 파싱구현풀이 작성
연습 채점은 공개 테스트로 실행합니다. 인증 제출은 코드를 봉인한 뒤 새 입력을 실행하고 서버에서 출력을 대조하며 코드와 판정을 저장합니다.
풀이를 제출하면 여기에서 결과를 확인할 수 있습니다.
연습 기록은 이 브라우저에 최근 50개를 저장합니다. 인증 기록은 내 제출에서 확인하세요.
이 브라우저의 연습 기록
언어별 제한
테스트 케이스마다 새 전역에서 실행하며 준비 시간은 제외합니다. 시간 초과된 출력은 검사하지 않습니다. 브라우저·기기 성능에 따라 실행 시간이 달라집니다.
| 언어 | 엔진(버전) | 시간 제한 | 메모리 |
|---|---|---|---|
| javascript | 사용자 브라우저 JavaScript 엔진 (버전은 브라우저에 따라 다름) | 1000ms / 테스트 | 측정하지 않음(브라우저 채점) |
| python | Pyodide 314.0.7 (CPython 3.14 WASM) | 5000ms / 테스트 | 측정하지 않음(브라우저 채점) |