SDUT 1197 约瑟夫问题
2017-09-14 17:52
232 查看
约瑟夫问题
Time Limit: 1000MSMemory Limit: 65536KBSubmitStatistic
Discuss
Problem Description
n个人想玩残酷的死亡游戏,游戏规则如下:n个人进行编号,分别从1到n,排成一个圈,顺时针从1开始数到m,数到m的人被杀,剩下的人继续游戏,活到最后的一个人是胜利者。
请输出最后一个人的编号。
Input
输入n和m值。Output
输出胜利者的编号。Example Input
5 3
Example Output
4
Hint
第一轮:3被杀第二轮:1被杀第三轮:5被杀第四轮:2被杀#include<stdio.h> int main() { int n,m,re_n,i,count; scanf("%d %d",&n,&m); int peo ; for(i=0;i<n;i++) peo[i]=1; re_n=n;//报数前圈子里的人数 i=n-1;//报数的为下一个人 while(re_n>1) { count=0; while(count<m) { i=(i+1)%n; if(peo[i]) count++; } re_n--;//报m的人出局,人数减一 peo[i]=0; } for(i=0;i<n;i++) { if(peo[i]) { printf("%d\n",i+1); break; } } return 0; }
相关文章推荐
- sdut 1197-约瑟夫问题(循环链表)
- sdut1197约瑟夫问题
- [1197]约瑟夫问题 (循环链表)SDUT
- [1197]约瑟夫问题 (循环链表)SDUT
- 约瑟夫问题-sdut 1197
- SDUT 1197 约瑟夫问题
- SDUT 1197----约瑟夫问题
- 1197 约瑟夫问题
- OJ【1197】 约瑟夫问题
- SDUTOJ(1197)约瑟夫问题
- 1197约瑟夫问题
- SDUT-约瑟夫问题
- 1197约瑟夫问题
- 【1197】约瑟夫问题
- SDUTOJ 1197 约瑟夫问题——循环链表解法数学解法和循环队列
- 约瑟夫问题 sdutoj 1197
- 约瑟夫问题 sdutoj 1197
- 约瑟夫问题解法
- 程序设计大赛--约瑟夫问题
- 约瑟夫问题的一种O(n)数学处理方法