约瑟夫环
来源:互联网 发布:淘宝评论100字好评 编辑:程序博客网 时间:2024/05/16 18:48
#include <iostream.h>
#include <stdlib.h>
struct Boy
{
int number;
int secret;
};
typedef Boy DataType; //定义具体问题元素的数据类型
#include "SeqList2.h"
void main(void)
{
SeqList myList(10);
// Boy boy[7]={{1,3},{2,1},{3,7},{4,2},{5,4},{6,8},{7,4}};
// Boy boy[7]={{1,1},{2,1},{3,2},{4,3},{5,4},{6,5},{7,6}};
Boy boy[7]={{1,1},{2,1},{3,1},{4,1},{5,1},{6,1},{7,1}};
int i,size,next;
int m=2;//m是开始时任意给定的报数上限值
int k=0;//是每次第下一个报数的人在顺序表中的下标,
//编号为1的人下标为0
for(i=0;i<7;i++)
myList.Insert(boy[i],i);
do{
size=myList.Size(); //现在链表中的人数
next=m%size;
if(next==0) //如果m与现在链表中的人数相等
next=myList.Size();
next-=1;//next是第一个报数的人与出列人之间的间隔数
k=k+next;
if(k>=myList.Size()) //确认k没有越界
k=k-myList.Size();
DataType temp=myList.Delete(k); //在链表中删去出列人
//而他的信息保留在temp变量中
cout <<k<<"/t"<<temp.number<<"/t"; //输出答案
cout <<temp.secret<<"/t"<<endl;
m=temp.secret;//将出列人的密码赋绘m
}while(myList.Size()>0);
}
- 约瑟夫问题、约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- 约瑟夫环
- showModalDialog根据内容自动调整窗口大小
- Comet:基于 HTTP 长连接的“服务器推”技术
- InterCompany中的Price list
- RIFF 文件格式
- 在Spring中异常处理机制实例测试
- 约瑟夫环
- PreTranslateMessage函数阅读
- 80后
- 如果不想使用隐式生成的函数就要显式地禁止它(声明而不定义)
- 给reporting services加个条件型的格式
- spool用法小结
- 一个计算机专业学生几年的Java编程经验汇总
- C#数据导出到Excel方法汇总
- 绑定用户控件赋值对象(非基本数据类型)