홍삼 게임 (Easy)

두 토큰이 원형으로 배열된 사람들 사이를 좌우로 정확히 D칸씩 움직일 때, 한 토큰이 다른 토큰을 가리켜 게임이 끝나는 최소 이동 횟수를 구한다.

보통5BFS그래프수학구현면접 대비아직 제출이 없습니다시간 제한1초메모리 제한512 MB

문제

은하는 술과 게임과 술 게임을 좋아한다. 그중에서도 가장 좋아하는 술 게임이 "홍삼 게임"이다. NN명이 테이블에 원형으로 둘러앉아서 하고, 규칙은 다음과 같다.

  1. 은하가 서로 다른 두 사람을 지목한다.
  2. 지목당한 두 사람이 동시에 테이블에 앉은 사람 중 한 명씩을 골라 지목한다.
  3. 두 사람이 같은 사람을 지목했으면 게임이 끝난다. 그렇지 않으면 2번으로 돌아간다.

대회가 끝난 뒤 참가자들은 근처 술집으로 뒤풀이를 하러 갔고, 은하의 주도로 홍삼 게임을 하게 되었다. 그런데 사람이 너무 많이 모인 탓에 누가 누구를 지목하는지 잘 보이지 않아 게임이 수시로 중단되었다. 이 상황을 보다 못한 은하의 친구 은서가 규칙을 고친 "질서 있는 홍삼 게임"을 제안했다. 이 게임의 규칙은 다음과 같다.

  1. 은하가 서로 다른 두 사람을 순서대로 지목한다. 먼저 지목당한 사람이 지목권 A를, 두 번째로 지목당한 사람이 지목권 B를 받는다.
  2. 지목권 A를 가진 사람이 자신의 왼쪽 또는 오른쪽으로 정확히 DAD_A만큼 떨어진 사람 한 명을 지목해 자신의 지목권을 넘긴다.
  3. 지목당한 사람이 이미 지목권 B를 가진 사람이면 게임이 끝난다.
  4. 지목권 B를 가진 사람이 자신의 왼쪽 또는 오른쪽으로 정확히 DBD_B만큼 떨어진 사람 한 명을 지목해 자신의 지목권을 넘긴다.
  5. 지목당한 사람이 이미 지목권 A를 가진 사람이면 게임이 끝난다. 그렇지 않으면 2번으로 돌아간다.

은서의 제안 덕분에 참가자들은 질서 있게 홍삼 게임을 즐기게 되었다. 하지만 은하가 몇 시간 내내 게임을 돌리자 참가자들은 지쳐 갔고, 은하가 누구를 지목하든 지목 간격을 어떻게 정하든 게임을 최대한 빨리 끝내려 하게 되었다. 불쌍한 뒤풀이 참가자들을 홍삼 지옥에서 구해 주자.

참가자에게는 1번부터 NN번까지 반시계방향으로 번호가 붙어 있다. 즉 ii번 참가자의 바로 왼쪽에 i1i - 1번, 바로 오른쪽에 i+1i + 1번 참가자가 앉아 있다. 예외로 1번 참가자의 바로 왼쪽에는 NN번 참가자가, NN번 참가자의 바로 오른쪽에는 1번 참가자가 앉아 있다.

입력

첫째 줄에 질서 있는 홍삼 게임의 참가자 수 NN (2N5002 \le N \le 500), 은하가 먼저 지목한 사람의 번호 AA와 두 번째로 지목한 사람의 번호 BB (1A,BN1 \le A, B \le N, ABA \ne B), 각 지목권의 지목 간격을 나타내는 정수 DAD_A, DBD_B (1DA,DBN11 \le D_A, D_B \le N - 1)가 공백을 사이에 두고 순서대로 주어진다.

출력

첫째 줄에 입력된 게임을 최대한 빨리 끝내고자 할 때 필요한 최소 지목 횟수를 출력한다. 은하가 처음에 두 사람을 지목한 것은 횟수에 넣지 않는다. 끝낼 수 없는 게임이면 Evil Galazy를 출력한다.

힌트

N=6N = 6, A=5A = 5, B=1B = 1, DA=1D_A = 1, DB=2D_B = 2인 게임은 다음 순서로 진행하면 세 번의 지목으로 끝난다.

  1. 지목권 A를 가진 5번 참가자는 4번 또는 6번 참가자를 지목할 수 있다. 이 중 4번 참가자를 지목해 지목권을 넘긴다.
  2. 지목권 B를 가진 1번 참가자는 5번 또는 3번 참가자를 지목할 수 있다. 이 중 3번 참가자를 지목해 지목권을 넘긴다.
  3. 지목권 A를 가진 4번 참가자가 3번 참가자를 지목해 지목권을 넘기고 게임이 끝난다.