두 로봇이 각자의 복도에서 병렬로 이동하며 정해진 순서대로 버튼을 누를 때 걸리는 최소 시간을 구합니다.
쉬움3시뮬레이션그리디면접 대비아직 제출이 없습니다시간 제한5초메모리 제한512 MB파란 로봇과 주황 로봇이 서로 다른 복도에 갇혀 있다. 두 복도에는 각각 1번부터 100번까지 번호가 붙은 버튼 100개가 놓여 있고, k번 버튼은 복도 입구에서 k미터 떨어진 자리에 있다. 두 로봇은 모두 1번 버튼 앞에서 출발한다.
1초 동안 로봇 한 대는 다음 셋 중 하나를 한다.
두 로봇은 정해진 버튼 목록을 그 순서대로 눌러야 한다. 순서는 두 로봇이 미리 모두 알고 있고, 매 초 두 로봇이 동시에 움직인다. 순서상 앞선 버튼을 누르는 동작이 끝나기 전에는 다음 버튼을 누를 수 없다. 목록에 있는 버튼을 모두 순서대로 누르는 데 필요한 최소 시간을 초 단위로 구하라.
O 2는 주황 로봇 복도의 2번 버튼, B 1은 파란 로봇 복도의 1번 버튼을 뜻한다. 예컨대 O 2, B 1, B 2, O 4 순서는 아래 계획대로 6초에 끝낼 수 있다.
| 시각 | 주황 | 파랑 |
|---|---|---|
| 1 | 2번으로 이동 | 1번에서 대기 |
| 2 | 2번 버튼을 누름 | 1번에서 대기 |
| 3 | 3번으로 이동 | 1번 버튼을 누름 |
| 4 | 4번으로 이동 | 2번으로 이동 |
| 5 | 4번에서 대기 | 2번 버튼을 누름 |
| 6 | 4번 버튼을 누름 | 2번에서 대기 |
파랑은 주황이 O 2를 누르는 동작을 끝낼 때까지 기다린 다음에야 B 1을 누를 수 있다.
첫 줄에 테스트 케이스의 수 T가 주어진다.
이어지는 T개의 줄에 테스트 케이스가 한 줄씩 주어진다. 각 줄은 눌러야 하는 버튼의 개수 N으로 시작하고, 그 뒤에 항목 N개가 R1 P1 R2 P2 순서로 온다. Ri는 로봇의 색이며 O 또는 B이고, Pi는 버튼 번호이다. 모든 값은 공백으로 구분된다.
각 테스트 케이스마다 Case #x: y 형식으로 한 줄씩 출력한다. x는 1부터 시작하는 테스트 케이스 번호이고, y는 주어진 버튼을 순서대로 모두 누르는 데 필요한 최소 시간(초)이다.