체스판 위의 벼룩

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

요약
한 변의 길이가 S인 무한 체스보드에서 벼룩이 (x, y)에서 시작해 매번 (dx, dy)만큼 점프한다. 흰 사각형 내부에 처음 도착하는 점프 횟수를 구하거나, 영원히 도달하지 못함을 판정한다.
난이도

보통10점 중 6점

유형
수학, 정수론, 구현
정답자
아직 제출이 없습니다

문제

무한 체스판은 유한한 체스판을 오른쪽과 위쪽으로 무한히 확장하여 얻는다. 각 칸은 검은색 또는 흰색이며 한 변의 길이는 SS 밀리미터이다(0<S≤10000 < S \le 1000). 가장 왼쪽 아래 칸은 검은색이다. 벼룩은 체스판 위의 점 (x,y)(x, y)(밀리미터 단위)에 있으며, 한 번 뛸 때마다 오른쪽으로 dxdx 밀리미터, 위쪽으로 dydy 밀리미터 이동한다(0<dx, dy0 < dx,\ dy). 즉 위치 (x,y)(x, y)에 있는 벼룩은 한 번 뛴 뒤 (x+dx, y+dy)(x+dx,\ y+dy)에 도착한다.

벼룩의 시작 위치가 주어질 때, 벼룩이 흰색 칸에 도달하기까지 몇 번 뛰어야 하는지 구하여라. 벼룩이 두 칸의 경계에 착지하면 흰색 칸에 착지한 것으로 세지 않는다. 벼룩이 흰색 칸에 결코 도달하지 못할 수도 있다.

입력

입력은 여러 개의 테스트 케이스로 이루어진다. 각 테스트 케이스는 공백으로 구분된 다섯 개의 음이 아닌 정수 SS, xx, yy, dxdx, dydy를 담은 한 줄이다. 마지막 테스트 케이스 다음 줄에는 다섯 개의 0이 주어지며, 이 줄은 처리하지 않는다.

출력

각 테스트 케이스마다 한 줄을 출력한다. 벼룩이 nn번 뛴 뒤 (a,b)(a, b)에서 처음으로 흰색 칸에 도달하면 After n jumps the flea lands at (a, b).를 출력한다. 벼룩이 흰색 칸에 결코 도달하지 못하면 The flea cannot escape from black squares.를 출력한다.

예제3

  1. 예제 1

    입력
    10 2 3 3 2
    100 49 73 214 38
    25 0 0 5 25
    407 1270 1323 1 1
    18 72 6 18 6
    407 1270 1170 100 114
    0 0 0 0 0
    
    예상 출력
    After 3 jumps the flea lands at (11, 9).
    After 1 jumps the flea lands at (263, 111).
    The flea cannot escape from black squares.
    After 306 jumps the flea lands at (1576, 1629).
    The flea cannot escape from black squares.
    After 0 jumps the flea lands at (1270, 1170).
    
  2. 예제 2

    입력
    10 15 3 1 1
    0 0 0 0 0
    
    예상 출력
    After 0 jumps the flea lands at (15, 3).
    
  3. 예제 3

    입력
    10 1 1 2 1
    0 0 0 0 0
    
    예상 출력
    After 5 jumps the flea lands at (11, 6).