約瑟夫環板子-第k個出去的人

#include<bits/stdc++.h>
 
using namespace std;
 
int main(){
    int n,k;
    while(scanf("%d%d",&n,&k)==2){//n個人第k個人走,最後一個人是誰
        int t; scanf("%d",&t);
        while(t--){
            int q; scanf("%d",&q);
            long long N = (long long)q*k;
            while(N>n){
                N = (N-n-1)/(k-1)+N-n;
            }
            printf("%d%c",(int)N," \n"[!t]);
        }
    }
    return 0;
}

from yiqzq

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章