Input
接下来每行输入一个小孩的名字(人名不超过15个字符)
最后一行输入W,S (W < N),用逗号","间隔
Output
Sample Input
5 Xiaoming Xiaohua Xiaowang Zhangsan Lisi 2,3
Sample Output
Zhangsan Xiaohua Xiaoming Xiaowang
Lisi
约瑟夫环
#include <cstdio>
#include <cstring>
#include <cmath>
#include <cstdlib>
#include <cctype>
#include <iostream>
#include <algorithm>
#include <vector>
#include <stack>
#include <deque>
#include <queue>
#include <set>
#include <list>
#include <map>
#include <string>
using namespace std;
#define infinity 2147483647
int main()
{
int n,i,j,w,m,count,num;
char s[65][20];
int flag[65];
while(scanf("%d",&n)!=EOF)
{
for(i=1;i<=n;i++)
flag[i]=1;
for(i=1;i<=n;i++)
scanf("%s",s[i]);
scanf("%d,%d",&w,&m);
count=0;
num=0;
for(i=w;i<=n;)
{
if(flag[i])
{
count++;
}
if(count==m)
{
cout <<s[i] <<endl;
count=0;
flag[i]=0;
num++;
}
if(num==n-1)
{
for(j=1;j<=n;j++)
{
if(flag[j])
{
cout <<s[j] <<endl;
break;
}
}
break;
}
if(i==n)//回到头
i=1;
else
i++;
}
}
return 0;
}