2746:约瑟夫问题(猴子选大王)
2014-01-21 16:59
429 查看
点击打开链接
/* 目的:模拟猴子选大王 时间:2014.1.21 */ #include <stdio.h> #include <malloc.h> #include <string.h> int main() { int n, m, t, i, j; int *p; while(~scanf("%d%d", &n, &m),m||n) { p = (int*)malloc(sizeof(int)*(n+1)); memset(p,0,sizeof(int)*(n+1)); t = n;//t用来判断当前的猴子的数目 j = 0;//从j = 1 开始判断,for循环中有j++,一定要先判断,否则很麻烦 i = 0;//用来统计是否是第m号猴子用来排除猴子 for(;t>1;t--)//每次找到一个猴子进行排除 { for(;i<m;) { j++; if(j == n + 1) j = 1; if(p[j]==0) i++; } //找到要排除的猴子位置 p[j] = 1; i= 0; } for(i = 1;i <= n;i ++) { if(p[i] == 0) { printf("%d\n", i); break; } } } return 0; } /* ------------------ 6 2 思路1.就是模拟,刚开始全部初始为0,被排除掉就变为1,剩下的为0的即为大王 5 2.如果一个变量在以下的代码中还会再用到,那就需要一个副本,如n 12 1 12 12 4 1 8 3 7 ------------------ */
相关文章推荐
- java实现猴子选大王问题(约瑟夫问题)
- 第二十四周项目4-猴子选大王(约瑟夫问题)
- C语言实现猴子选大王(约瑟夫问题)
- 第二十四周项目4-猴子选大王(约瑟夫问题)
- poj-约瑟夫问题(猴子选大王)
- POJ3750: 小孩报数问题+一道经典约瑟夫问题(猴子选大王)
- 第19周上机实践项目2——猴子选大王(约瑟夫问题)
- 约瑟夫问题(猴子选大王)
- 约瑟夫问题的PHP实现——猴子选大王的问题
- 猴子选大王(约瑟夫问题)JAVA实现
- 猴子选大王 - 约瑟夫问题
- 约瑟夫问题--猴子选大王
- 猴子选大王问题&&约瑟夫环问题
- 约瑟夫问题——猴子选大王 双向指针
- 数据结构之约瑟夫问题---猴子选大王
- 蓝桥杯--猴子选大王-约瑟夫问题
- 约瑟夫问题(猴子选大王)
- 约瑟夫问题(猴子选大王) 链表实现
- 算法_php猴子选大王_约瑟夫问题
- 【可爱的小模板】约瑟夫问题(猴子选大王)