그리고 하나가 남았다

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

문제

돌 치우기 게임을 해 보자.

처음에 그림 1과 같이 $1$부터 $n$까지 번호가 매겨진 $n$개의 돌이 시계 방향으로 원을 이루어 놓여 있다. 그리고 두 수 $k$와 $m$이 주어진다. 이 상태에서 돌이 하나만 남을 때까지 아래 규칙에 따라 돌을 하나씩 치운다.

  • 스텝 1: 돌 $m$을 치운다.
  • 스텝 $i$ ($i \ge 2$): 스텝 $(i-1)$에서 치운 돌의 위치에서 시작하여, 남은 돌 중 시계 방향으로 $k$번째에 있는 돌을 치운다. 즉, $k-1$개의 돌을 건너뛴 뒤에 있는 돌을 치우며, 이미 치운 돌은 건너뛰는 횟수에 세지 않는다.

스텝 1, 스텝 2, 스텝 3, ...을 순서대로 실행하여 돌이 하나만 남을 때까지 반복하면, 그 마지막으로 남은 돌이 게임의 답이 된다.

예를 들어 그림 1에서와 같이 $n = 8$, $k = 5$, $m = 3$인 경우 답은 $1$이다.

그림 1: 게임 예제

  • 초기 상태: 8개의 돌이 시계 방향으로 놓여 있다.
  • 스텝 1: $m = 3$이므로 돌 3이 치워진다.
  • 스텝 2: 3에서 시작하고 $k = 5$이므로 돌 4, 5, 6, 7 (총 4개)을 건너뛰고 돌 8을 치운다.
  • 스텝 3: 8에서 시작하여 돌 1, 2, 4, 5를 건너뛰고 돌 6을 치운다. 돌 3은 이미 치워졌으므로 무시되어 건너뛰는 횟수에 포함되지 않음에 주의한다.
  • 스텝 4~7: 돌이 하나만 남을 때까지 계속한다.
  • 마지막으로 남은 돌이 1이므로 답은 1이다.

입력

입력은 여러 개의 데이터 줄로 이루어지며, 각 데이터 줄은 다음과 같이 세 개의 수로 이루어진다.

n k m

마지막 데이터 줄 다음에는 세 개의 $0$으로 이루어진 줄이 온다. 각 수는 다음 범위를 만족한다.

$2 \le n \le 10000$, $1 \le k \le 10000$, $1 \le m \le n$

데이터 줄의 개수는 100보다 작다.

출력

각 데이터 줄에 대해 마지막으로 남은 돌의 번호를 출력한다.