队列解约瑟夫环问题
程序员文章站
2022-04-21 19:05:13
...
#include<queue>
#include<string>
#include<iostream>
#include<stack>
using namespace std;
/*
想起了刚学C时艰难地写这个问题的自己。代码后给个公式法。去年看了好久没看懂,刚刚在给出的博客里看懂的。
*/
int main() {
int n,m;
queue<int> q;
cin>>n>>m;
for(int i=1;i<=n;i++){
q.push(i);
}
for(int i=1;q.size()!=1;i=(i+1)%m)
{
if(i!=0)q.push(q.front());
q.pop();
}
cout<<q.front()<<endl;
return 0;
}
约瑟夫环公式法