택시 요금 계산
시간 제한1초메모리 제한128 MB
각 도로의 길이와 1km당 소요 시간이 주어질 때, 두 도로 사이를 이동하는 승객의 요금을 구간별 단가와 심야·정체 할증을 적용해 계산한다.
문제
택시 요금은 이동 거리, 시각, 교통 상황 등 여러 요소에 따라 달라집니다. 택시는 거리 을 이 순서대로 지나갑니다. 거리 의 길이는 킬로미터이며, 택시는 이 거리에서 일정한 속도로 달려 의 1킬로미터를 지나는 데 분이 걸립니다.
승객은 어떤 거리 의 시작 지점에서 타고, 그보다 뒤에 있는 거리 의 끝 지점에서 내립니다(승하차는 항상 거리의 끝에서 이루어지며, 거리 중간에서는 타거나 내리지 않습니다). 요금은 1킬로미터마다 다음과 같이 부과됩니다.
- 처음 10킬로미터는 각 1000리알입니다.
- 그다음 20킬로미터(11번째부터 30번째까지)는 각 250리알입니다.
- 30번째 이후의 각 킬로미터는 100리알입니다.
여기에 두 가지 할증이 적용될 수 있습니다.
- 야간 할증. 각 킬로미터를 따로 봅니다. 그 킬로미터를 달리는 동안 오전 12시부터 오전 6시 사이의 시간대에 1분 이상 주행했다면, 그 킬로미터는 20% 더 비쌉니다.
- 정체 할증. 전체 이동의 평균 속도가 시속 30킬로미터 미만이면 요금이 10% 인상됩니다.
야간 할증은 킬로미터마다 먼저 더해지고, 그 합계에 10% 정체 할증을 한 번 적용합니다.
입력
입력은 여러 개의 테스트 케이스로 이루어집니다. 각 테스트 케이스는 두 부분으로 구성됩니다.
첫 번째 부분은 택시가 지나가는 거리들을 주행 순서대로 한 줄에 하나씩 나열합니다.
거리이름 길이 분
거리이름 은 공백 없이 최대 20개의 영문자와 숫자로 이루어진 서로 다른 문자열이고, 길이 는 킬로미터 단위의 (최대 200), 분 은 분 단위의 로 둘 다 양의 정수입니다. 각 거리는 정확히 한 번씩 등장합니다. 이 부분은 $ 문자 하나만 있는 줄로 끝납니다.
두 번째 부분은 다음 한 줄입니다.
출발거리 도착거리 시각
출발거리 와 도착거리 는 각각 승차 거리와 하차 거리의 이름이고, 시각 은 24시간제 HH:MM 형식의 승차 시각입니다. 두 거리는 모두 거리 목록에 있으며, 도착 거리는 출발 거리보다 앞서지 않습니다. # 문자 하나만 있는 줄이 각 테스트 케이스의 끝을 나타냅니다.
입력은 대시 두 개로 이루어진 -- 줄로 끝납니다.
출력
각 테스트 케이스마다 승객이 낸 요금을 한 줄에 출력합니다.