参考博客: 约瑟夫问题
题目:
/***************
Problem from :ds
Problem describe :约瑟夫问题
递归方程 : F(i) = (F(i-1)+m)%i
data:2016.12.1
****************/
#include<iostream>
#include<cstdlib>
#include<cstdio>
#include<algorithm>
#include<cmath>
#include<map>
#include<stack>
#include<queue>
#include<ctime>
#include<cstring>
#include<vector>
#include<string>
#define ll __int64
#define inf 0x3f3f3f3f3f
using namespace std;
int main()
{
// freopen("in.txt","r",stdin);
// freopen("out.txt","w",stdout);
int i, n, m, ans=0;
scanf("%d %d", &n, &m);
if(n==1) printf("1\n");
else {
for(i=2; i<n; i++)
{
ans = (ans+m)%i;
}
printf("%d\n", ans+2);
}
return 0;
}