解题思路:
注意事项:
参考代码:
#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++代码)浏览:1040 |
C语言程序设计教程(第三版)课后习题7.4 (C语言代码)浏览:1232 |
WU-小九九 (C++代码)浏览:1678 |
C语言程序设计教程(第三版)课后习题6.8 (C语言代码)浏览:522 |
C语言程序设计教程(第三版)课后习题6.2 (C语言代码)浏览:682 |
水仙花 (C语言代码)浏览:1039 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:682 |
1051(奇了怪了)浏览:645 |
时间转换 (C语言代码)浏览:623 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:401 |