问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言解决"约瑟夫问题"

发布网友 发布时间:2022-04-22 01:04

我来回答

3个回答

热心网友 时间:2022-04-22 02:33

#include<stdio.h>
struct list//建立一个结构体,包括每个人的编号,密码和下一级的指针
{
int id;
struct list *next;
};
list* input(int n)//链表的初始化
{
list *p,*q,*l;
int i,m;
p=new list;
l=new list;
l->next=NULL;
p=l;
p->id=1;//第一个人的初始化
for(i=2;i<=n;i++)//第二个人到第num个人的初始化
{
q=new list;
q->id=i;
q->next=NULL;
p->next=q;
p=q;
}
p->next=l;//使表尾指向表头,成循环链表
return p;
}
int main()
{
int num,m1,i;
list *q,*p;
printf("输入人数:");
while(scanf("%d",&num)!=EOF)
{
printf("密码为:");
scanf("%d",&m1);
p=input(num);
printf("最后一人序号为:");
while(p->next!=p)
{
for(i=1;i<=m1;i++)
{
q=p;
p=p->next;
}
q->next=p->next;
delete p;
p=q;
}
printf("%4d",p->id);
delete p;
printf("\n");
}
}

热心网友 时间:2022-04-22 03:51

#include <stdio.h>
int main(void)
{
int n, m, i, s=0;
printf ("N M = "); scanf("%d%d", &n, &m);
for (i=2; i<=n; i++) s=(s+m)%i;
printf ("The winner is %d\n", s+1);
}

参考资料:http://ke.baidu.com/view/717633.htm

热心网友 时间:2022-04-22 05:26

#include <stdio.h>
void main()
{
int n, i,m,p,k;
while(scanf("%d%d",&n,&m)!=EOF&&n&&m)
{
i=0;
while(++i<=n)
{
p=i*m;
while (p>n)
p=p-n+(p-n-1)/(m-1);
}
printf("%d\n",(p-1)%n+1);
}
}
c语言解决约瑟夫问题

用c语言解决约瑟夫问题的方法如下:用单循环链表来解决这一问题,实现的方法首先要定义链表结点;单循环链表的结点结构与一般单链表的结点结构完全相同,只是数据域用一个整数来表示;将它们组成一个单循环链表。接下来从位置为1的结点开始数,数到第m的下一个结点,就将下一个结点从循环链表中删除;从...

C语言-有趣的约瑟夫问题及解决办法

约瑟夫问题的数学解决方案多种多样,这里提供一种使用循环链表的方法。此方法基于原始问题中的圆圈排列,通过循环链表实现数人与淘汰的过程。编写一个程序,根据特定规则运行,即可模拟出约瑟夫问题的解。程序源代码如下,通过调整Start、Count、length这三个参数,可以改变游戏规则,尝试不同的初始位置和人数。...

约瑟夫环问题怎么解决啊?请用C语言写代码,谢谢!

include"MyNode.h" //文件1 Node::Node( ){ next = NULL;} Node::Node(Node_entry item, Node *add_on){ entry = item;next = add_on;} --- include&lt;iostream.h&gt; //文件2 typedef int Node_entry;struct Node { // data members Node_entry entry;Node *next;// constructor...

求C语言 约瑟夫教徒问题 可运行的代码

include &lt;stdio.h&gt; include &lt;conio.h&gt; include &lt;malloc.h&gt; define N 9 define OVERFLOW 0 define OK 1 int KeyW[N] = {4,7,5,9,3,2,6,1,8};typedef struct LNode { int keyword;struct LNode *next;}LNode,*LinkList;void Joseph(LinkList p,int m,int x){ LinkList q;int ...

求解一个C语言问题

约瑟夫的问题十分有名.对那些人,他们不熟悉这个最初的问题:在n个人中,取名为1,2,...,n,站成一个圆圈每m个人将被处死及只有最后剩下的那个人会被救活,约瑟夫很聪明地选择了最后剩下的那个人的位置,这样留下了他的性命让我们知道这个事件.比如当n = 6和m=5则这些人中取名为5,4,6,2,3的...

用C语言解决一个实际问题(不要太长)

约瑟夫环(很有名的数学问题)已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。void JOSEPHUS(int n,int k,int m) //n为总人数,k...

求助, 约瑟夫环问题(C语言)

修改后的版本,解决初始m为1的情况。include&lt;stdio.h&gt; include&lt;malloc.h&gt; typedef struct node{ int num;int val;struct node* next;}listnode;//两个结构体可以合并以减少程序复杂度 typedef listnode* linklist;int main(){ int n,i,b,m,j;linklist q=(listnode*)malloc(sizeof(listnode))...

约瑟夫游戏问题

c[1]:=1; while cxiaoa do begin doubleb; incc; end; decc; fua; outit; end. 约瑟夫问题的另外一个有名的例子:猴子选大王 一. 问题描述: 一堆猴子都有编号,编号是1,2,3 ...m ,这群猴子(m个)按照1-m的顺序围坐一圈,从第1开始数,每数到第N个,该猴子就要离开此圈,这样依次...

数据结构中的约瑟夫环问题用C语言怎么编写出来啊?

1. 程序分析:这是一个比较经典的算法--约瑟夫环问题.2.个人分析: 算法比较经典,对于这样的问题本应该使用链表的形式会比较容易.约瑟夫环算法 则体现了使用数组来完成链表该完成的功能,虽然形式上完全不相同,但却求出了 相同的结果.有异曲同工之妙.总之我个人认为是数组中非常经典的算法了.希望本 ...

(C语言)用静态链表求解约瑟夫问题。

define MAX 100 typedef struct nodes { int data;nodes* next;}Lnode; /*静态链表节点结构体定义 */ // typedef struct list // { // Lnode node[MAX];// int head;// }List,*PList;void InitList(Lnode* pHead,int n)/*n为节点数 */ { pHead-&gt;data = 0;Lnode* pPre ...

C语言实验题――约瑟夫问题頀 约瑟夫问题c语言数组详解 约瑟夫问题C语言 解约瑟夫问题 C语言约瑟夫环 约瑟夫环C语言思路 约瑟夫问题c++代码 约瑟夫问题 新约瑟夫问题
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...现在说的最多一句话就是不想解释了让我相信他 我问他什么的说不想... 猫妈妈买回的是什么? 公务员考试中要求的“2009年应届毕业生”怎么界定? 165身高女生标准体重 投诉家里养了很臭的鸡鸭怕 No.93 希望皇霍普·真皇的卡片信息 邻居在我家边上养了好多鸡,夏天气味很臭,严重影响我的生活 手上总起小水泡怎么回事 ...问我,你为什么选择我们公司??你有什么优势可以让我们录用你?_百度... 艾滋病患者舌头发白怎么回事 B2科目3路考有多少科目? 在外地没有网络、怎么使用离线导航 没网络可以导航吗 carplay没网怎么用离线导航 纯牛奶代表什么 求《践行《弟子规》故事案例》作文,字数300至400 弟子规 的日记 怎么写 弟子规日记 关于践行弟子规的作文,要求字数在1000左右 急求!!! 弟子规日记一百字要孝敬父母那段的 给我们的法官写&lt;感谢信&gt;,怎么写? 请告诉我弟子规践行日记100字左右的谁会写?急!急!急!!! 弟子规践行日记三百五十个字 感谢执行法官的落款词 关于弟子规践行内容的作文200—300字之间的 怎样说话才感动法官 如何践行弟子规二百字作文 打官司法院执行局人把久款追回了,清问感谢话怎么讲 请问。我的手机版优酷会员怎么取消自动续费,我用登的优酷为什 用数组方法解决约瑟夫问题 东芝240s打印机驱动安装步骤 兄弟mfc240c打印机驱动程序那里有下载?我的丢了。急!!! 东芝打印机240S在W8系统上安装部上怎么办?随机的驱动光盘也不支持W8系统 请问下兄弟打印机(型号MFC--240C)的驱动哪有下载的? 兄弟打印机 mfc-240c 驱动下载 和安装过程 cutok 刻乐 DC240/DC330 怎么安装打印驱动 现在有没有19元租卡 ghost安装XP系统出现这个是什么情况,如何解决? 为什么我家的海尔冰箱冷冻室不制冷,超温警报灯不灭???急急急!!! 海尔bcd_208kbs冰箱超温报警不工作了咋办? 苏煜博 我爱你 父姓苏母姓廖儿子取名宝典 如何使用美图秀秀制作自己的Q版头像 音乐丝带信号线与一般线有何区别 请教音乐丝带奥丁信号线的问题 淘宝网上音乐丝带valhalla 音频线是真的吗 音响线用金宝还是音乐丝带好 想买一套高级的音响发烧设备求大家出出主意 请问乌鲁木齐3ce化妆品在哪里买 音乐丝带frey2电源线听感评论