约瑟夫问题(猴子选大王)
来源:互联网 发布:张孝祥java视频 编辑:程序博客网 时间:2024/05/16 23:59
#include <iostream>#define N 7//成员数目#define NEED_COUNT 3//出数组条件#define NEED_STAY 1//需要留下的个数using namespace std;int main(){int index = 0;//索引,指向当前int had_count = 0;//出数组条件int had_out = 0;//已经出数组的个数int name_array[N];//编号数组int state_array[N];//出数组状态数组,在为0,出为1int i;//初始化for(i=0; i<N; i++){name_array[i] = i+1;state_array[i] = 0;}//开始执行,条件是看最后一个编号是多少while(had_out < N - NEED_STAY){for(index = 0; index < N && had_out < N - NEED_STAY; index++){if(state_array[index])//是1跳过continue;if(++had_count == NEED_COUNT){state_array[index] = 1;//标记已经出数组了had_out++;//出数组个数加1had_count = 0;//将数数置为0}}}//输出数组,即可看出最后谁在数组里面for(i=0; i<N; i++){cout<<state_array[i]<<" ";}cout<<endl;return 0;}
以前写过约瑟夫问题的代码,要用的时候又找不到了,今天自己又写了一个,做了注释,作为笔记
整体看需要两个数组,三个变量。
一个数组(name_array)存放猴子的编号,一个数组(state_array)记录出圈子的猴子和在在圈子里面的猴子。
三个变量有注释
0 0
- 约瑟夫问题(猴子选大王)
- 猴子选大王 - 约瑟夫问题
- 猴子选大王问题&&约瑟夫环问题
- poj-约瑟夫问题(猴子选大王)
- 2746:约瑟夫问题(猴子选大王)
- 数据结构之约瑟夫问题---猴子选大王
- 猴子选大王(约瑟夫环问题)
- 猴子选大王问题(约瑟夫环)
- 约瑟夫问题(猴子选大王)
- 约瑟夫环 猴子选大王的问题
- 蓝桥杯--猴子选大王-约瑟夫问题
- 猴子选大王问题(约瑟夫环)
- 约瑟夫 猴子选大王
- 约瑟夫问题(猴子大王)
- 猴子选大王-约瑟夫环
- 猴子选大王(约瑟夫环)
- 单链表实现猴子选大王(约瑟夫环问题)
- 猴子选大王(约瑟夫环问题)的OO解法
- 在Windows7下玩老游戏花屏的解决办法
- An easy problem
- [LeetCode] Balanced Binary Tree
- C语言 二维数组(指针)动态分配和释放
- MIPS指令系统能流水的5个有利条件
- 约瑟夫问题(猴子选大王)
- 教你怎么阅读外文文献
- centos 安装中文字体和中文输入法
- HTML表格标签的使用-<table>
- Remove Duplicates from Sorted Array
- 0 or 1
- Ubuntu的软件包管理
- 简单三维BFSuva532
- UVA 11691 - Allergy Test(状压dp+贪心)