约瑟夫环-C++实现
来源:互联网 发布:大数据存储技术研究 编辑:程序博客网 时间:2024/06/07 03:50
#include <iostream>using namespace std;void main(){ int N, M;//N:桌上总人数;M:计数到M出局,类似游戏逢3过 cout << "输入总人数: " << endl; cin >> N; cout << "输入计数阈值: " << endl; cin >> M; bool *a=new bool[N]; for (int i = 0; i < N; i++) { *(a+i) = true; } int rem = N;//桌上剩余人数 int pos = 0;//当前开始计数人的位置 int count = 0;//当前计数大小 //一直循环到桌上只剩一个人 while (rem>1) { if (pos == N) { pos = 0; } if (a[pos] == true) { count++; if (count == M) { *(a+pos) = false; cout << pos << " deaded" << endl; --rem; count = 0; } } ++pos; } //输出桌上剩余的最后一个人(数组下标从0开始,而我们习惯从1开始,所以在输出是下标加1) for (int i = 0; i<N; i++){ if (*(a+i) == true){ cout<<"remainder: "<<i+1<<endl;//第i+1个人最后一个出局/自杀 } } system("pause");}
实验演示(为了便于理解,博客中的注释均为汉语,我自己的代码注释为英文):
参考的博文如下:
约瑟夫环问题
阅读全文
0 0
- C 单链表 实现约瑟夫环
- C++vector实现约瑟夫环
- C语言-实现约瑟夫环
- C语言实现约瑟夫环
- C/C++,数据结构单链表实现约瑟夫环
- C语言-----链表实现约瑟夫环
- 【年少的风】C实现约瑟夫环
- 【年少的风】C实现约瑟夫环
- C链表实现约瑟夫环
- C链表实现约瑟夫环
- c语言:约瑟夫环的实现
- C语言单链表实现约瑟夫环
- C语言实现单链表之约瑟夫环
- C语言实现约瑟夫环问题
- 【C++】链表实现约瑟夫环
- 约瑟夫C语言实现
- 【约瑟夫】编程实现约瑟夫环
- 循环链表实现约瑟夫环(C实现)~
- MongoDB $type 操作符和 条件操作符
- 单体内置对象
- 20170714
- js call apply的使用
- redis配置文件
- 约瑟夫环-C++实现
- spark2.2 structured Streaming
- CodeForces 424 Div2 CBA题
- Failure [INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113]
- Java 反射 使用总结
- List Copy
- HDU--2151--Worm(动态规划)
- php 导出excel压缩包
- 树状数组,离散化,突破口(Segment Game,HDU 5372)