#include<iostream>
#include<queue>
//根据题意,这个题目可以使用队列数据结构
//将排在队首的数字取出进行处理以判断是否再放入队列中
//使用队列的三个优势:1. 判断还剩几个同学 2. 处理从n到1 3. 不需要标志位
using namespace std;
struct person{
int num;
int number;
};
int main(){
queue<person> game;
int n, k;
cin >> n >> k;
person g;
for(int i = 1; i <= n; i++)
{
g.num = i;
g.number = 0;
game.push(g);
}
int number = 0;
//开始报数
while(1)
{
number++;
person ga;
ga = game.front();
game.pop();
if(number% k != 0 && number%10!= k)
game.push(ga);
if(game.size() == 1)
break;
}
person gam;
gam = game.front();
cout << gam.num;
return 0;
}
CCF CSP 游戏
最新推荐文章于 2021-10-24 10:29:42 发布