int main(){
int n,m;
cin>>n>>m;
vector<bool> in(n+1,true);
int last = 0;
// 一次out一个
for(int i=1;i<=n;++i){
int cnt = 0;
// 每次都必须报够m个数
while(cnt<m){
last++;
if(last>n) last=1;
if(in[last]==false){
continue;
}
cnt++;
}
in[last] = false;
cout<<last<<" ";
}
}
约瑟夫问题
最新推荐文章于 2021-07-02 12:05:26 发布