가희와 신칸센 1
시간 제한1초메모리 제한512 MB
도카이도 신칸센에서 정차한 역 목록이 주어질 때, 어느 등급(kodama, hikari, nozomi)인지 판별하거나 가장 작은 번호의 오류 코드를 출력한다.
문제
실제 도카이도 신칸센의 요금과 다름에 주의하세요.
도카이도 신칸센은 Tokyo 역에서부터 Shin-Osaka 역까지 가 넘는 구간을 이어주는 노선입니다. Shin-Osaka 역에서 산요 신칸센과 직결됩니다. 해당 노선에는 등급이 낮은 순서대로 kodama, hikari, nozomi가 운행합니다. kodama는 시발역부터 종착역까지 거치는 모든 역에 정차하며, 상위 등급의 nozomi와 hikari는 통과하는 역이 있습니다.
[표 1] 도카이도 신칸센 역 정보
[표 1]은 도카이도 신칸센 노선에 있는 역 정보를 의미합니다. Nagoya 역을 기준으로 Tokyo 역 방면으로 운행하면 동행, Shin-Osaka 방면으로 운행하면 서행으로 운행한다고 합니다. nozomi 열과 hikari 열은 해당 등급 열차의 정차 정보를 의미합니다. O는 전부 정차를 의미하며, △는 선택 정차, 공백은 모두 통과를 의미합니다.
운임 거리란 운임 계산을 하기 위해 쓰이는 거리이고, 실거리는 실제 열차가 운행한 거리를 의미합니다. 이 두 거리가 [표 1]의 맨 끝 두 열에 있는데, 이는 Tokyo 역으로부터 누적 운임 거리와 누적 실거리를 나타내며, 단위는 입니다. 도카이도 신칸센의 운임은 아래와 같이 계산됩니다.
- Tokyo ~ Shinagawa 구간의 경우 일반선 요금이 적용됩니다.
- 그 외의 경우 고속선 요금이 적용됩니다.
- 단, Shin-Yokohama ~ Shinagawa 구간의 경우, 모든 등급이 kodama 등급의 요금으로 계산됩니다.
등급별 고속선과 일반선 요율은 [표 2]와 같습니다.
[표 2] 도카이도 신칸센의 등급별 요금
큰 도시로 출퇴근하는 사람들을 위해 일부 역에 시발하거나, 종착하는 경우가 있습니다. 아래 [표 3]은 시발, 종착, 혹은 둘 다 할 수 있는 역을 나타냅니다. 비고에 시발이 적혀 있는 경우 시발만 가능하며, 종착이 적혀 있는 경우 종착만 가능합니다. 없는 경우, 둘 다 가능한 역입니다.
[표 3] 시발하거나 종착이 가능한 역 목록들
[표 3]에 등장하는 역들에서는, 항상 정차하는 등급의 열차들만 시발하거나 종착합니다. Mishima 역에서 출발하는 열차는 동행으로만 운행하며, Nagoya 역에 시발하거나 종착하는 열차는 아래 조건을 만족합니다.
- Shin-Osaka 역에 시발하지도 않고, 종착하지도 않습니다.
hikari 등급의 정차 패턴은 Shin-Yokohama ~ Nagoya 구간 (1구간)과 Nagoya ~ Kyoto 구간 (2구간), 즉 두 구간의 정차 패턴을 가지고 알 수 있습니다. 먼저 구간의 Rapid 패턴은 다음 세 조건 중 하나 이상을 만족합니다.
- 구간의 시작 역과 끝 역을 제외하고, 개 이하의 역에 정차합니다.
- 무정차 거리가 이상입니다.
- 시즈오카시에 있는 역에 정차하지 않습니다.
그렇지 않으면 1구간에서 Normal 패턴입니다. 2구간에서 Rapid 패턴은 다음 조건을 만족합니다.
- 2구간에서 nozomi 등급의 열차와 정차 패턴이 같습니다.
그렇지 않으면 2구간에서 Normal 패턴입니다.
또한, 해당 구간을 운행하는 모든 hikari 등급의 열차는 아래 조건을 추가로 만족합니다.
- Maibara 역에 정차하지 않으면, Gifu-Hashima 역에 정차하지 않습니다.
hikari 등급의 열차가 정차할 수 있는 패턴은 [표 4]와 같습니다.
[표 4] 2개의 구간에서 hikari 등급의 정차 패턴
또한, 2구간을 운행하지 않는 경우, 1구간에서 Rapid 패턴으로 운행하지 않습니다. 또한 모든 열차는 다음 조건을 만족합니다.
- 시발역에서 종착역까지 운임이 원 이상입니다. 고속선 요금이 적용되는 구간에서만 운행하는 경우, 시발역에서 종착역으로 이동하는 데 드는 비용은 원 이상입니다.
- 시발역에서 종착역까지 하위 등급의 열차와 정차역 패턴이 같지 않습니다.
가희는 신칸센을 번 탔습니다. 각각에 대해 운행 정보가 주어졌을 때, 어느 등급을 탔는지 알려주세요.
입력
첫 번째 줄에 가 주어집니다.
다음에 개의 운행 정보가 주어집니다. 각 운행 정보는 아래와 같이 주어집니다.
-
첫 번째 줄에 정차한 역의 수 이 주어집니다.
-
다음 개의 줄에 정차한 역의 정보가 주어집니다. 번째로 주어진 역은, 번째로 정차한 역임을 의미합니다. 역의 정보는 두 형식 중 하나로 주어집니다.
- {
station_name} - {
station_name}station
- {
또한 운행 정보는 다음을 만족합니다. 정차한 역의 수가 이고, 번째로 정차한 역 와 번째로 정차한 역 에 대해 ()
- 두 역이 서로 다른 역이라면, 번 역을 출발하여 번째 역에 도착할 때까지 어떠한 곳에도 정차하지 않으며, 진행 방향을 바꾸지 않습니다.
- 두 역이 도카이도 신칸센 노선에 있으면, 번 역을 출발하여 번째 역에 도착할 때까지 도카이도 신칸센 외 다른 노선을 경유하지 않습니다.
출력
개의 줄에 걸쳐, 아래와 같이 출력해 주세요.
- 주어진 데이터에 오류가 있다면 아래 포맷으로 출력해 주세요.
error_id는 [표 5]의 케이스에 대응되며, 오류가 발생하는 케이스가 여러 개인 경우 가장 작은 값을 출력해 주세요.ERROR{error_id}
- 그렇지 않으면, 운행 정보에 맞는 열차 등급을 출력해 주세요. 열차 등급은
kodama,hikari,nozomi중 하나입니다.
[표 5] 에러 코드
역 이름이 동일하면 같은 역으로 취급합니다. 또한 역 이름은 대소문자를 구별합니다.
제한
- {
station_name}은 알파벳 대소문자와 공백, 숫자로만 이루어져 있으며, 길이는 을 넘지 않습니다. - {
station_name}은 문자열station으로 끝나지 않습니다.