Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
int arr [] = new int [n + 1];
int m = scan.nextInt();
int l = scan.nextInt();
int count = 1;
//배열의 위치를 지정해줄 변수
int cnt = 0;
arr[1] = 1;
//1번째 사람이 처음 공은 받기 때문에
//초기 값 1을 더해주고 시작
while(true) {
if(arr[count] % 2 == 0) {
count = count - l;
//짝수일 경우 현재 위치에서 L만큼 빼준다.
if(count <= 0) {
count = n + count;
}
//배열이 0 부터 시작하기 때문에
//0이거나 0보다 작으면,
//위치를 시작의 끝점으로 바꾸어준다.
arr[count]++;
cnt++;
if(arr[count] == m) {
break;
}
}else {
//홀수일 경우 현재 위치에서 L만큼 더해준다.
count = count + l;
if(count > n) {
count = count - n;
if(count == 0) {
count = 1;
}
//배열이 0 부터 시작하기 때문에
//커진 시작점에서 전체 배열의 크기를 빼주어
//위치를 재설정해준다.
//배열이 0부터 시작하기 때문에 0일경우
//1로 시작점을 설정해준다.
}
arr[count]++;
cnt++;
if(arr[count] == m) {
break;
}
}
}
System.out.println(cnt);