카드 쌓기

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

요약
카드를 한 장 나눠 줄 때마다 위의 P장을 아래로 옮기는 규칙으로 덱을 돌릴 때, 베시가 받게 되는 원래 위치들을 오름차순으로 구한다.
난이도

보통10점 중 4점

유형
시뮬레이션, 큐, 구현, 수학
정답자
아직 제출이 없습니다

문제

베시는 N−1N-1명의 소 친구들과 함께, 즉 모두 NN명이서 카드 게임을 합니다 (2≤N≤1002 \le N \le 100). 카드는 KK장이며 (N≤K≤100 000N \le K \le 100\,000, KK는 NN의 배수입니다), 그중 정확히 M=K/NM = K/N장이 "좋은" 카드이고 나머지 K−MK-M장은 "나쁜" 카드입니다.

베시는 딜러이고, 당연히 "좋은" 카드를 모두 자기가 가지고 싶어 합니다. 친구들은 베시가 속임수를 쓸까 봐 다음 규칙대로 카드를 나눠 주도록 했습니다.

  1. 덱의 맨 위 카드를 베시의 오른쪽에 있는 소에게 나눠 준다.
  2. 카드를 한 장 나눠 줄 때마다, 덱의 맨 위에서 다음 PP장 (1≤P≤101 \le P \le 10)을 덱의 맨 아래로 옮긴다.
  3. 반시계 방향으로 각 사람에게 차례대로 계속 나눠 준다.

베시는 오른쪽 소부터 나눠 주기 시작하고 자신은 반시계 방향 순서에서 가장 마지막에 있으므로, 나눠 주는 카드 중 매 NN번째 카드를 받습니다.

카드는 처음 덱의 맨 위에서부터 1,2,…1, 2, \dots번으로 번호가 매겨져 있습니다. 베시가 "좋은" 카드를 모두 받으려면 처음 덱의 어느 위치에 "좋은" 카드를 놓아야 하는지 구하세요.

입력

첫째 줄에 세 정수 NN, KK, PP가 공백으로 구분되어 주어진다.

출력

"좋은" 카드를 놓아야 할 위치(처음 덱의 맨 위에서부터 센 번호)를 오름차순으로 한 줄에 하나씩 총 M=K/NM = K/N개 출력한다. 이렇게 놓으면 규칙대로 카드를 모두 나눠 주었을 때 베시가 모든 좋은 카드를 받게 된다.

힌트

N=3N = 3, K=9K = 9, P=2P = 2인 경우를 살펴봅시다. 베시는 카드를 한 장 나눠 줄 때마다 맨 위 두 장을 덱의 맨 아래로 옮깁니다.

처음 덱의 33, 77, 88번 위치에 "좋은" 카드를 놓으면 됩니다. 카드가 나눠지는 과정은 다음과 같습니다 (모든 숫자는 처음 덱에서의 위치입니다).

단계덱 (위 -> 아래)P1P2베시
처음 상태1 2 3 4 5 6 7 8 9- - -- - -- - -
맨 위 [1]을 1번 소에게2 3 4 5 6 7 8 91 - -- - -- - -
맨 위 카드를 아래로 (2장 중 1)3 4 5 6 7 8 9 21 - -- - -- - -
맨 위 카드를 아래로 (2장 중 2)4 5 6 7 8 9 2 31 - -- - -- - -
맨 위 [4]을 2번 소에게5 6 7 8 9 2 31 - -4 - -- - -
맨 위 카드를 아래로 (2장 중 1)6 7 8 9 2 3 51 - -4 - -- - -
맨 위 카드를 아래로 (2장 중 2)7 8 9 2 3 5 61 - -4 - -- - -
맨 위 [7]을 베시에게8 9 2 3 5 61 - -4 - -7 - -
맨 위 카드를 아래로 (2장 중 1)9 2 3 5 6 81 - -4 - -7 - -
맨 위 카드를 아래로 (2장 중 2)2 3 5 6 8 91 - -4 - -7 - -
맨 위 [2]을 1번 소에게3 5 6 8 91 2 -4 - -7 - -
맨 위 카드를 아래로 (2장 중 1)5 6 8 9 31 2 -4 - -7 - -
맨 위 카드를 아래로 (2장 중 2)6 8 9 3 51 2 -4 - -7 - -
맨 위 [6]을 2번 소에게8 9 3 51 2 -4 6 -7 - -
맨 위 카드를 아래로 (2장 중 1)9 3 5 81 2 -4 6 -7 - -
맨 위 카드를 아래로 (2장 중 2)3 5 8 91 2 -4 6 -7 - -
맨 위 [3]을 베시에게5 8 91 2 -4 6 -7 3 -
맨 위 카드를 아래로 (2장 중 1)8 9 51 2 -4 6 -7 3 -
맨 위 카드를 아래로 (2장 중 2)9 5 81 2 -4 6 -7 3 -
맨 위 [9]을 1번 소에게5 81 2 94 6 -7 3 -
맨 위 카드를 아래로 (2장 중 1)8 51 2 94 6 -7 3 -
맨 위 카드를 아래로 (2장 중 2)5 81 2 94 6 -7 3 -
맨 위 [5]을 2번 소에게81 2 94 6 57 3 -
맨 위 카드를 아래로 (2장 중 1)81 2 94 6 57 3 -
맨 위 카드를 아래로 (2장 중 2)81 2 94 6 57 3 -
맨 위 [8]을 베시에게(빈 덱)1 2 94 6 57 3 8

결국 베시는 33, 77, 88번 위치에 놓았던 "좋은" 카드를 모두 갖게 됩니다.

예제1

  1. 예제 1

    입력
    3 9 2
    
    예상 출력
    3
    7
    8