1334:【例2-3】围圈报数

围圈报数

区分什么时候将队首元素放入队尾,什么时候将队首元素直接丢弃。

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<queue>
 4 using namespace std;
 5 
 6 queue<int> q;
 7 
 8 int main(){
 9     int n,m,cnt;
10     cin>>n>>m;
11     cnt=0;
12     for(int i=1;i<=n;i++)q.push(i);
13     while(!q.empty()){
14         int t=q.front();
15         q.pop();
16         if(cnt==m-1)cout<<t<<" ";
17         else q.push(t);
18         cnt=(cnt+1)%m;
19     }
20     return 0;
21 }

 

posted @ 2021-08-25 22:17  Rekord  阅读(675)  评论(0编辑  收藏  举报