시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
2 초 128 MB 83 15 14 24.138%

문제

적절한 자동차는 첩보원의 필수품이다. BAPC로 알려진 한 렌트카 회사에서는 첩보원에게 어울릴 만한 자동차들을 방대하게 구비해두고 있으며, 사후처리까지 담당하고 있다. 첩보원으로부터 반납받은 자동차를 관리하는 것은 분명 돈이 드는 일이다. 가솔린을 보충하거나, (대개의 경우에) 파손된 차를 수리하게 된다.

매 연말에, 회사를 이용한 모든 첩보원들은 이번 해에 이용한 차에 대해 비용을 지불하게 된다. 그러나 바로 지난 주에 관리 시스템에 치명적인 손상이 생겨 더 이상 사용할 수 없게 되었다. 겨우 복구된 자료는 자동차의 정보와 지난 해에 일어난 사건들의 기록 일부 뿐이었다. 이 정보들을 이용해 회사에서는 각 첩보원들에게 렌탈한 자동차에 대한 비용을 수동으로 청구하려 한다.

모든 자동차는 원가와 함께 등록되어 있으며, 거기에 초기 대여 비용과 운행 거리 1킬로미터당의 추가 요금이 함께 등록되어 있다. 사건 기록은 자동차의 대여, 반납, 그리고 자동차에 발생했던 사고, 이렇게 총 세 가지로 이루어져 있다. 만약 차를 대여한다면 첩보원은 그에 대한 초기 대여 비용을 지불해야 하고, 반납 시점까지의 주행 거리에 비례한 추가 요금을 지불해야 한다. 만일 대여 도중 사고로 인해 차가 파손되었다면 그에 대한 비용 또한 청구된다. 모든 사고 기록은 자동차의 파손율로 기록되어 있다. 자동차의 수리에 대한 비용은 그 자동차의 원가에 파손율을 곱한 값으로 청구된다. 만일 소수점 이하의 어떤 비용이 발생한다면 그 비용은 청구서에 올라가기 전 올림하여 합산된다.

다행히도 자동차의 목록은 완전히 복구되었다. 하지만 시스템 손상의 여파로 인해 사건 기록은 손상되어 있다. 첩보원들에게 일관성 없는 청구서를 보내는 것은 회사의 신뢰도에 크나큰 손실을 입힐 것이기 때문에, 당신은 존재하는 사건 기록이 일관성 있는지의 여부를 판정할 프로그램을 작성하고자 한다. 일관성 있는 기록의 조건은 다음과 같다. 

  • 첩보원은 차를 반납하기 전에 대여를 먼저 한다.
  • 대여된 차는 반드시 반납된다.
  • 한 명의 첩보원은 최대 하나의 차만을 동시에 대여할 수 있다.
  • 사고는 첩보원이 차를 사용하던 기간에만 발생한다.

입력

입력의 첫 줄엔 테스트 케이스가 주어지며, 이 값은 100을 넘지 않는다.

각각의 테스트 케이스는 다음과 같이 구성되어 있다.

  • 공백으로 구분된 두 개의 정수 n, m (0 ≤ n ≤ 500 , 0 ≤ m ≤ 10000) : 자동차 종류의 수, 사건 기록의 로그 수
  • n줄에 걸쳐 문자열 N과 공백으로 구분된 세 개의 정수 p, q, k (1 ≤ p ≤ 100 000; 1 ≤ q ≤ 1 000; 1 ≤ k ≤ 100) : 자동차의 이름, 원가, 초기 대여 비용, 주행 거리 1 킬로미터당 추가되는 비용
  • m줄에 걸쳐, 사건의 발생 시각을 의미하는 정수 t (0 ≤ t ≤ 100000), 사건과 연관된 첩보원의 이름을 의미하는 문자열 S, 사건의 종류를 나타내는 한 개의 알파벳 e, 
  1. e='p' (pick-up) 일 경우, 뒤이어 문자열 C : 대여된 차의 이름
  2. e='r' (return) 일 경우, 정수 d : 주행 거리(단위는 킬로미터)
  3. e='a' (accident) 일 경우, 정수 s (0 ≤ s ≤ 100) : 차의 파손율

차의 이름과 첩보원의 이름은 1글자 이상 40글자 이하인 알파벳 소문자로만 이루어져 있다. 각각의 테스트 케이스에 대해 첩보원의 수는 최대 500명이며, 사건은 발생한 순서대로 주어진다.

출력

테스트 케이스당 다음을 출력한다.

  • 각 줄에 첩보원의 이름, 총 청구 비용을 공백으로 구분하여 출력
  • 만약 어떤 첩보원에 대한 사건 기록이 일관성이 없다면, 총 비용 대신 문자열 "INCONSISTENT" 를 출력.
  • 출력은 첩보원의 이름을 사전순으로 정렬한 형태로 한다.

예제 입력

1
2 8
bmw 5000 150 10
jaguar 7000 200 25
10 mallory p bmw
15 jb p jaguar
20 jb r 500
35 badluckbrian a 100
50 mallory a 10
55 silva p jaguar
60 mallory r 100
110 silva a 30

예제 출력

badluckbrian INCONSISTENT
jb 12700
mallory 1650
silva INCONSISTENT

힌트