数据结构算法问题 约瑟夫问题
2014-07-17 13:11
337 查看
有n只猴子,按顺时针方向围成一圈选大王(编号从1到n),从第1号开始报数,一直数到m,数到m的猴子退出圈外,剩下的猴子再接着从1开始报数。就这样,直到圈内只剩下一只猴子时,这个猴子就是猴王,编程求输入n,m后,输出最后猴王的编号。 关于输入 每行是用空格分开的两个整数,第一个是 n, 第二个是 m ( 0 < m,n <=300)。最后一行是: 0 0 关于输出 对于每行输入数据(最后一行除外),输出数据也是一行,即最后猴王的编号 例子输入 6 2 12 4 8 3 0 0 例子输出 5 1#include <iostream> #include<malloc.h> using namespace std; struct monkey { int num; monkey *next; }; monkey * create(int n) { monkey *head=(struct monkey*)malloc(sizeof(struct monkey)); monkey *p=(struct monkey*)malloc(sizeof(struct monkey)); p=head; p->num=1; for(int i=2;i<=n;i++) { monkey *q=(struct monkey*)malloc(sizeof(struct monkey)); p->next=q; p=q; p->num=i; } p->next=head; return head; } void paichu(monkey *p,int n,int m) { monkey *q=0; for(int i=0;i<n;i++) { for(int j=1;j<m-1;j++) { p=p->next; } q=p->next; p->next=q->next; p=p->next; } cout<<q->num<<endl; } int main() { int n,m; cin>>n>>m; monkey *head=create(n); paichu(head,n,m); return 0; }
相关文章推荐
- 数据结构及算法 - 约瑟夫问题 - javascript
- 数据结构与算法——约瑟夫问题
- 数据结构与算法---约瑟夫问题
- 数据结构与算法学习笔记04(约瑟夫问题)
- 【数据结构及算法】2.图像染色问题
- 数据结构算法问题 移动小球
- LeetCode 问题难度,面试出现频率及问题相关数据结构和算法
- 数据结构与算法问题 AVL二叉平衡树
- [C++]数据结构:算法分析之八皇后问题
- 数据结构——算法之(011)( 字符串是否包含问题)
- 数据结构与算法问题 单源最短路径 浙大OJ
- 数据结构算法问题 小球下落
- 数据结构与算法问题 二叉排序树
- 数据结构与算法2:八皇后问题
- 数据结构与算法问题 二叉搜索树
- 数据结构与算法问题 快速排序
- 数据结构与算法实验题 11.3 最小权语言问题
- 数据结构与算法实验题 11.3 最小权语言问题
- 数据结构与算法问题 北大oj 2075(最小生成树)
- 数据结构与算法问题 堆栈使用 2011年吉林大学计算机研究生机试真题