#P2009. 约瑟夫问题.数组标记法.填空题
约瑟夫问题.数组标记法.填空题
题目描述
有 个人,其编号分别为 ~。按顺序围成一个圈,现在给定一个数 ,从第一个人开始依次报数,报到 的人出圈,然后再从下一个人开始,继续从 开始依次报数,报到 的人再出圈,... 如此循环,直到最后一个人出圈为止。
编程输出所有人出圈的顺序。
输入格式
一行两个正整数 和 ,之间用一个空格隔开,, 。
输出格式
输出 行,每行一个正整数,表示依次出圈的人的编号。
样例
8 5
5
2
8
7
1
4
6
3
程序填空
#include<iostream>
using namespace std;
int f[101],n,m,cnt;
main(){
cin>>n>>m;
int nn=n,i=0;
while( 填空(1) )
{
填空(2);
if(i==n+1) 填空(3);
if(f[i]) 填空(4);
cnt++;
if(填空(5))
{
cout<<填空(6)<<endl;
f[i] = 填空(7);
cnt = 0;
nn--;
}
}
return 0;
}
填空(1) {{ input(1) }}
填空(2) {{ input(2) }}
填空(3) {{ input(3) }}
填空(4) {{ input(4) }}
填空(5) {{ input(5) }}
填空(6) {{ input(6) }}
填空(7) {{ input(7) }}