解题思路:
注意事项:
参考代码:
#include<iostream> using namespace std; long Josephus(long,long,long); int main() { int m,n; while(cin>>n>>m) cout<<Josephus(m,n,1)<<endl; return 0; } long Josephus(long m,long n,long k) { long x; for(long i=1;i<=n;i++) { if((k+m)<i) { x=(k-1)/(i-m); if(i+x<n) { k=k+m*x; i=i+x; } else { k=k+m*n-i; i=n; } } k=(k+m-1)%i+1; } return k; }
0.0分
0 人评分
C语言训练-数字母 (C语言代码)浏览:670 |
C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:646 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:1482 |
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:750 |
矩阵加法 (C语言代码)浏览:1771 |
C语言程序设计教程(第三版)课后习题5.5 (C语言代码)浏览:582 |
简单的a+b (C语言代码)浏览:572 |
C二级辅导-温度转换 (C语言代码)浏览:575 |
简单的a+b (C语言代码)浏览:443 |
简单的a+b (C语言代码)浏览:363 |