Rout 66

시간 제한1초메모리 제한128 MB

요약
요새를 가까운 순서로 처리하며 돌파할 때마다 침입자의 병력이 줄어드는 상황을 시뮬레이션하고, 모든 요새를 돌파하는지 판정한다.
난이도

쉬움10점 중 3점

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

문제

로마인들은 화려한 숫자 체계를 가지고 있었을지 몰라도, 서고트족(오늘날 알라리크 1세로 알려진 알라레이크스가 이끌었다)은 410년 8월 24일 로마를 함락시켰다. 로마가 외적에게 함락된 것은 800년 만에 처음 있는 일이었다.

이 문제에서는 압도적일 수도 있는 침략군이 수비대를 몰아내는 과정을, 실제보다 훨씬 덜 잔혹하고 덜 사실적으로 시뮬레이션한다.

강도 II의 침략군이, 방어군의 강도가 JJ이고 요새의 강도가 SS인 성채를 거리 DD만큼 앞에 두고 진격한다고 하자. 침략군의 격퇴력(Routing Force) FF는 강도와 거리의 곱이다.

F=I⋅DF = I \cdot D

그리고 방어군의 저지력(Blocking Force) BB는 방어군 강도와 요새 강도의 제곱을 곱한 값이다.

B=J⋅S2B = J \cdot S^2

F≤BF \le B이면 격퇴는 실패하고 침략군은 쫓겨난다. F>BF > B이면 격퇴에 성공하여 모든 방어군이 쫓겨나고 침략군은 전진한다. 이때 침략군의 강도는 방어군의 저지력과 침략군의 격퇴력의 비 B/FB / F만큼 줄어들며, 성공한 격퇴가 항상 최소 한 명의 병사를 남기도록 올림한다.

Inew=⌈I(1−BF)⌉I_{\text{new}} = \left\lceil I \left(1 - \frac{B}{F}\right) \right\rceil

침략군이 한 성채를 돌파하면 그 성채의 위치가 다음 성채까지의 거리를 재는 새로운 출발점이 되며, 침략군이 모든 성채를 돌파하거나 완전히 격퇴될 때까지 이 과정이 반복된다.

모든 성채는 침략군의 출발 위치에서 일직선 위에 있으며, 가장 가까운 것부터 먼 순서로 차례대로 상대해야 한다. 한 데이터 집합 안에서 같은 위치에 있는 성채는 없다.

입력

첫 줄에는 데이터 집합의 수를 나타내는 정수 NN (1≤N≤1001 \le N \le 100)이 주어진다. 각 데이터 집합은 다음으로 이루어진다.

  • 성채의 수를 나타내는 정수 EE (1≤E≤201 \le E \le 20)가 적힌 한 줄;
  • 각각 공백으로 구분된 세 정수 DD, JJ, SS (1≤D,J≤100001 \le D, J \le 10000; 1≤S≤501 \le S \le 50)가 적힌 EE개의 줄. DD는 침략군의 출발 위치로부터 성채까지의 거리이며(성채는 임의의 순서로 주어질 수 있고 가장 가까운 것부터 먼 순서로 처리해야 한다), JJ와 SS는 각각 방어군 강도와 요새 강도이다;
  • 침략군의 강도를 나타내는 정수 II (1≤I≤300001 \le I \le 30000)가 적힌 한 줄.

출력

각 데이터 집합에 대해, 침략군이 모든 성채를 돌파하면 ROUT!를, 그러지 못하면 RETREAT!를 출력한다.

예제1

  1. 예제 1

    입력
    2
    1
    10 10 5
    100
    2
    75 100 5
    10 10 5
    50
    
    예상 출력
    ROUT!
    RETREAT!