출근 전쟁 (Small)

집에서 사무실로 이어지는 시간표 차량을 순서대로 타고 대기 시간과 주행 시간과 검문 지연의 기댓값을 합해 도착 기댓값을 구합니다.

쉬움3확률시뮬레이션수학면접 대비아직 제출이 없습니다시간 제한5초메모리 제한512 MB

문제

영수는 다음 주에 첫 출근을 앞두고 있다. 서울의 대중교통은 잘 갖춰져 있지만, 사정이 생겨 모든 교통수단이 검문을 받게 되었다. 첫 출근에 지각하지 않으려고 영수는 회사로 가는 길목의 교통편 시간표와 예상 지연 시간을 미리 모아 두었다. 영수가 회사에 도착하는 시각의 기댓값을 구하라.

교통 수단 하나는 다음과 같이 움직인다.

  • 출발 길목에서 매시 SS분에 출발한다. 즉 시각 SS, S+60S+60, S+120S+120, ... 에 출발한다. 영수가 시각 tt에 출발 길목에 있으면 tt 이상인 가장 이른 출발 시각의 차를 탄다. tt가 출발 시각과 같으면 그 차를 탄다.
  • 도착 길목까지 가는 데 RR분이 걸린다.
  • 이동 도중 경찰의 검문을 받는다. 검문 자체에는 시간이 걸리지 않지만 PP 퍼센트의 확률로 문제가 있어서 DD분 동안 지연된다. DD분이 지나면 다시 검문을 받고, 이때도 같은 확률로 또 지연된다. 검문은 통과할 때까지 무한히 반복된다. 검문에서 kk번 문제가 생기면 이동에 걸리는 시간은 R+D×kR + D \times k분이다.
  • 차에 탄 뒤에는 도착 길목에 닿기 전에 내릴 수 없다.

P=100P = 100인 교통 수단은 검문을 절대 통과하지 못하므로 도착 길목에 닿지 못한다.

영수가 집에서 출발하는 시각은 00이고, 어느 길목에서든지 도착 시각의 기댓값을 최소화하는 교통 수단을 선택한다.

입력

첫 줄에 테스트 케이스의 수 TT가 주어진다.

각 테스트 케이스의 첫 줄에는 정수 NN, MM, HH, OO가 공백으로 구분되어 주어진다. NN은 길목의 수, MM은 교통 수단의 수, HH는 집이 있는 길목 번호, OO는 회사가 있는 길목 번호이다.

이어지는 MM개의 줄에는 교통 수단마다 정수 여섯 개 AiA_i, BiB_i, SiS_i, RiR_i, DiD_i, PiP_i가 주어진다. AiA_i는 출발 길목 번호, BiB_i는 도착 길목 번호, SiS_i는 매시 출발하는 분, RiR_i는 이동 소요 시간, DiD_i는 한 번 지연될 때 늘어나는 시간, PiP_i는 검문에서 문제가 생길 확률이다. PiP_i는 퍼센트 값이다.

제한

  • 1T1001 \le T \le 100
  • 2N1002 \le N \le 100
  • 0MN10 \le M \le N - 1
  • 0H,O,Ai,Bi<N0 \le H, O, A_i, B_i < N
  • 0Si590 \le S_i \le 59
  • 1Ri1001 \le R_i \le 100
  • 1Di1001 \le D_i \le 100
  • 0Pi1000 \le P_i \le 100
  • 모든 ii에 대해 Bi=Ai+1B_i = A_i + 1
  • i<ji < j인 모든 쌍에 대해 AiAjA_i \ne A_j 또는 BiBjB_i \ne B_j. 따라서 한 길목에서 출발하는 교통 수단은 많아야 하나다.

출력

각 테스트 케이스마다 Case #x: y 형식으로 한 줄씩 출력한다. xx11부터 시작하는 테스트 케이스 번호이다.

영수가 회사에 도착할 수 있으면 yy는 도착 시각의 기댓값을 반올림해 소수점 아래 일곱 자리까지 적은 값이다. 일곱 자리를 모두 적으므로 기댓값이 정확히 정수여도 소수점 아래 00 일곱 개를 붙인다. 도착할 수 없으면 yy 자리에 소수점 없이 -1을 출력한다. H=OH = O이면 기댓값이 00이므로 0.0000000을 출력한다.