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

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

Catch-Up

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

요약
무한 격자 위에서 곽철이는 매초 정해진 벡터만큼 움직이고, 병윤이는 두 좌표에 같은 수를 더하거나 빼고, 양의 정수배로 곱하거나 두 좌표의 공약수로 나눌 수 있다. 두 사람이 같은 시각 같은 좌표에 있을 수 있는지 판정한다.
난이도

보통10점 중 7점

유형
정수론, 수학, 그리디
정답자
아직 제출이 없습니다

문제

무한히 큰 2차원 좌표평면 위에서 병윤이와 곽철이는 술래잡기를 한다. 곽철이는 (0,0)(0,0)부터 시작해서 1초마다 xx축으로 m_xm\_x, yy축으로 m_ym\_y만큼 움직인다. 병윤이는 (s_x,s_y)(s\_x, s\_y)에서 시작해서 1초에 한번씩 다음 행동들 중 하나를 할 수 있다.

  • 현재 위치가 (x,y)(x,y)이고 x,yx,y 모두 22 이상일 때 (x−1,y−1)(x-1,y-1)로 움직인다.
  • 현재 위치가 (x,y)(x,y)일 때 (x+1,y+1)(x+1,y+1)로 움직인다.
  • 현재 위치가 (x,y)(x,y)일 때 (ax,ay)(ax, ay)로 움직인다. (aa는 양의 정수)
  • 현재 위치가 (x,y)(x,y)일 때 (x/d,y/d)(x/d,y/d)로 움직인다. (dd는 xx, yy의 양의 공약수)

이때 병윤이가 곽철이를 따라잡을 수 있을지 알아보자. 병윤이가 곽철이와 같은 시점에 같은 좌표에 있다면 따라잡은 것이다.

입력

첫째 줄에 정수 s_x,s_y,m_x,m_ys\_x, s\_y, m\_x, m\_y가 공백을 사이에 두고 주어진다. (1≤s_x,s_y,m_x,m_y≤5000)(1 \le s\_x, s\_y, m\_x, m\_y \le 5000)

출력

병윤이가 곽철이를 따라잡을 수 있으면 YES를, 그렇지 않다면 NO를 출력한다.

예제2

  1. 예제 1

    입력
    1 2 3 4
    
    예상 출력
    YES
    
  2. 예제 2

    입력
    4 1 2 3
    
    예상 출력
    NO