可以用循环链表实现
这其实就是约瑟夫问题,只是换了个问法而已
- #include "stdafx.h"
- #include <iostream>
- using namespace std;
- int pantu(int n,int m)
- {
- int i, r=0;
- for ( i=2; i<=n; i++)
- {
- r=(r + m) % i;
- }
- return r + 1;
- }
- void main()
- {
- int a[13];
- int i, k;
- for( i=0; i<13; i++)
- {
- a[i] = i;
- }
- k = pantu( 13, 3);
- printf("%d",k);
- system("pause");
- }
复制代码 |