约瑟夫环问题
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1073
学习博客:
约瑟夫环问题详解 - CSDN博客 http://blog.csdn.net/tingyun_say/article/details/52343897
约瑟夫环之二(用递归的思想解决Josephus问题) - CSDN博客 http://blog.csdn.net/wusuopubupt/article/details/18214999
代码1:
#include <iostream>
using namespace std;
int main()
{
int n,k;
while(cin>>n>>k)
{
int ans=0;
for(int i=2;i<=n;i++)
ans=(ans+k)%i;
cout<<ans+1<<endl;
}
return 0;
}
代码2:
#include <iostream>
using namespace std;
int js(int n,int k)
{
if(n==1)
return 0;
else
return (js(n-1,k)+k)%n;
}
int main()
{
int n,k;
while(cin>>n>>k)
{
int ans=js(n,k);
cout<<ans+1<<endl;
}
return 0;
}