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;
}