解题思路:
注意事项:
参考代码:
#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语言代码)浏览:919 |
C语言程序设计教程(第三版)课后习题6.5 (Java代码)浏览:1124 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:1121 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:537 |
C语言训练-大、小写问题 (C语言代码)浏览:614 |
WU-蓝桥杯算法提高VIP-勾股数 (C++代码)浏览:1607 |
C语言程序设计教程(第三版)课后习题7.1 (C语言代码)浏览:611 |
用筛法求之N内的素数。 (C++代码)浏览:693 |
【亲和数】 (C语言代码)浏览:600 |
程序员的表白 (C语言代码)浏览:598 |