아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

멀티플레이어 퐁 (라지)

시간 제한5초메모리 제한512 MB

요약
반사하는 공을 양 팀이 정해진 순서대로 번갈아 받아내고 도착 지점에 닿지 못한 쪽이 패배하므로 승자와 패자가 튕겨낸 횟수를 구합니다.
난이도

어려움10점 중 8점

유형
수학, 게임 이론, 시뮬레이션
정답자
아직 제출이 없습니다

문제

두 팀이 퐁 경기를 한다. 각 선수는 패들을 하나씩 조작하고, 패들은 점으로 취급한다. 공 하나가 두 팀 사이를 오간다. 같은 팀 안에서는 정해진 순환 순서대로 공을 받아쳐야 한다. 세 명으로 이루어진 팀이라면 공을 처음 건드리는 선수가 P1, 그다음이 P2, 그다음이 P3이고, 그러고 나서야 다시 P1의 차례가 온다. 어떤 선수가 공에 닿지 못하면 공은 경기장 밖으로 나가고 그 선수의 팀이 진다.

경기장은 높이가 AA, 너비가 BB인 직사각형이다. 왼쪽 아래 꼭짓점이 (0,0)(0, 0)이고 가로 좌표 xx는 00부터 BB까지, 세로 좌표 yy는 00부터 AA까지다. LEFT 팀은 x=0x = 0 벽을 패들 NN개로 지키고, RIGHT 팀은 x=Bx = B 벽을 패들 MM개로 지킨다. 패들은 선수 한 명당 하나다. LEFT의 패들은 모두 초당 VV, RIGHT의 패들은 모두 초당 WW의 속력으로 세로로 움직인다. 같은 팀의 패들끼리는 서로 자유롭게 지나친다.

공은 높이 YY, 가로 위치 XX에서 출발해 매초 위로 VYV_Y, 오른쪽으로 VXV_X만큼 움직인다. 각 선수는 공의 처음 위치를 보고 나서 자기 벽의 원하는 지점에 패들을 놓고 경기를 시작한다. 공이 가로 벽(y=0y = 0 또는 y=Ay = A)에 닿으면 입사각과 반사각이 같도록 튕긴다. 공이 세로 벽에 닿는 순간에는, 받아칠 차례인 선수의 패들이 공이 도착한 지점에 정확히 있어야 한다. 패들이 그 자리에 있으면 공은 튕겨 나가고, 없으면 그 선수의 팀이 진다. 차례가 아닌 선수는 패들이 그 지점에 있어도 공을 건드릴 수 없다.

속도 성분은 00일 수도 있다. VXV_X가 00이면 공은 세로 벽에 절대 닿지 않으므로 경기가 끝나지 않는다.

모든 선수가 최선을 다한다고 할 때 경기의 결과를 구하여라.

입력

첫째 줄에 테스트 케이스의 개수 TT가 주어진다. 각 테스트 케이스는 네 줄로 이루어진다.

첫째 줄에는 경기장의 높이 AA와 너비 BB가 주어진다.

둘째 줄에는 x=0x = 0 벽을 지키는 팀의 인원 NN과 x=Bx = B 벽을 지키는 팀의 인원 MM이 주어진다.

셋째 줄에는 첫 번째 팀의 패들 속력 VV와 두 번째 팀의 패들 속력 WW가 주어진다.

넷째 줄에는 공의 세로 위치 YY, 가로 위치 XX, 세로 속도 VYV_Y, 가로 속도 VXV_X가 주어진다.

모든 값은 정수다.

  • 1≤T≤1001 \le T \le 100
  • 2≤A,B≤101002 \le A, B \le 10^{100}
  • 0<X<B0 < X < B
  • 0<Y<A0 < Y < A
  • 1≤N,M≤101001 \le N, M \le 10^{100}
  • 1≤V,W≤101001 \le V, W \le 10^{100}
  • −10100≤VY,VX≤10100-10^{100} \le V_Y, V_X \le 10^{100}

출력

각 테스트 케이스마다 Case #x: y 형식으로 한 줄씩 출력한다. xx는 1부터 시작하는 테스트 케이스 번호이고, yy는 다음 셋 중 하나다.

  • 경기가 영원히 이어질 수 있으면 DRAW
  • x=0x = 0 벽의 팀이 이기면 LEFT z. 이때 zz는 상대 팀이 공을 받아칠 수 있는 최대 횟수다.
  • x=Bx = B 벽의 팀이 이기면 RIGHT z. 이때 zz는 상대 팀이 공을 받아칠 수 있는 최대 횟수다.

힌트

그림은 첫 번째 예제의 첫 번째 테스트 케이스가 진행되는 모습이다. 공은 시각 0.3750.375에 오른쪽 벽에 닿고, RIGHT의 첫 번째 선수가 받아친다. 예를 들어 처음부터 그 지점에 패들을 두고 움직이지 않으면 된다. 공은 0.8750.875에 왼쪽 벽에 닿고 LEFT의 유일한 선수가 받아친다. 1.3751.375에 다시 오른쪽 벽에 닿는데, RIGHT의 두 번째 선수가 그 지점에 패들을 놓을 수 있다. 1.8751.875에 다시 왼쪽 벽에 닿을 때 LEFT 선수는 간신히 도착한다. 주어진 1초 동안 정확히 3만큼 이동하기 때문이다. 그다음 오른쪽 벽에 닿는 지점은 RIGHT의 첫 번째 선수가 가기에 너무 멀다. RIGHT의 두 번째 선수는 닿을 수 있지만 순환 순서 때문에 공을 건드릴 수 없다. RIGHT에 선수가 한 명 더 있었다면 그 선수가 공을 받아쳤을 것이고, 그러면 공이 LEFT의 유일한 선수가 따라가기에 너무 높은 곳으로 돌아오므로 LEFT가 졌을 것이다.

예제6

  1. 예제 1

    입력
    4
    6 4
    1 2
    3 1
    5 1 4 8
    12 3
    3 1
    2 3
    1 1 2 4
    12 3
    1 3
    3 1
    1 1 2 4
    12 2
    1 2
    10 2
    3 1 13 4
    
    예상 출력
    Case #1: LEFT 2
    Case #2: DRAW
    Case #3: LEFT 3
    Case #4: RIGHT 11
    
  2. 예제 2

    입력
    4
    2 2
    1 1
    1 1
    1 1 5 0
    2 2
    1 1
    1 1
    1 1 0 5
    2 2
    1 1
    1 1
    1 1 0 0
    10 3
    2 3
    1 1
    4 2 0 -7
    
    예상 출력
    Case #1: DRAW
    Case #2: DRAW
    Case #3: DRAW
    Case #4: DRAW
    
  3. 예제 3

    입력
    6
    2 2
    1 1
    1 1
    1 1 1 1
    2 2
    1 1
    1 1
    1 1 -1 -1
    2 2
    1 1
    1 1
    1 1 1 -1
    2 2
    1 1
    1 1
    1 1 -1 1
    2 2
    1 1
    10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
    1 1 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
    2 2
    10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
    1 1
    1 1 99999 7
    
    예상 출력
    Case #1: DRAW
    Case #2: DRAW
    Case #3: DRAW
    Case #4: DRAW
    Case #5: DRAW
    Case #6: DRAW
    
  4. 예제 4

    입력
    6
    6 4
    1 2
    3 1
    5 1 4 8
    6 4
    1 2
    2 1
    5 1 4 8
    6 4
    1 2
    3 2
    5 1 4 8
    6 4
    1 3
    3 1
    5 1 4 8
    6 4
    2 2
    3 1
    5 1 4 8
    6 4
    1 2
    1 1
    5 1 4 8
    
    예상 출력
    Case #1: LEFT 2
    Case #2: RIGHT 1
    Case #3: RIGHT 2
    Case #4: RIGHT 2
    Case #5: LEFT 2
    Case #6: RIGHT 1
    
  5. 예제 5

    입력
    4
    6 4
    1 2
    3 1
    1 3 -4 -8
    6 4
    2 1
    1 3
    5 3 4 -8
    6 4
    2 1
    1 3
    1 1 -4 8
    12 2
    2 1
    2 10
    9 1 -13 -4
    
    예상 출력
    Case #1: RIGHT 1
    Case #2: RIGHT 2
    Case #3: LEFT 1
    Case #4: LEFT 11
    
  6. 예제 6

    입력
    4
    100 3
    10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 1
    1 1
    50 1 7 3
    100 3
    1 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
    1 1
    50 1 7 3
    100 3
    10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
    1 1
    50 1 7 3
    97 5
    100000000000000000000000000000000000000000000000000 3
    1 2
    13 2 -41 29
    
    예상 출력
    Case #1: LEFT 1
    Case #2: RIGHT 1
    Case #3: DRAW
    Case #4: LEFT 3