原文:C语言 约瑟夫圈问题:N个人围成一圈,从第一个人开始按顺序报数并编号1,2,3,……N,然后开始从第一个人转圈报数,凡是报到3的退出圈子。则剩下的最后一个人编号是多少。

样例输入 输出 输入 输出 代码及分析: include lt stdio.h gt int main int i,n,N,out,a out i n 用out记录退出圈子的人,初始化 printf 输入约瑟夫圈大小 scanf d , amp N for i i lt N i 用N个数的数组保持N个人,并讲该数组全部初始化 ,用以记录第N 个人在圈外还是圈内 则圈内, 则圈外 a i i whi ...

2014-12-16 08:43 0 6381 推荐指数:

查看详情

n个人围成一圈顺序排号。从第一个人开始报数(从1到3报数),凡报到3的退出圈子,问最后留下的是原来第几号的那位。

这一道题,在刚学完指针之后的第一个礼拜,无意间看到课后练习,就去思考,起先不会做,想了很久,只有一点思路,但是还是不能把代码完整的写出来,后来就去百度,看了贴吧,发现这是经典问题了,俗名猴子选大王,发现很多种方法,我就挑其中的一种符合我这种初学者的方法,不过贴吧没有注释,一开始不理解,估计也有 ...

Tue Dec 08 20:56:00 CST 2015 6 55239
n个人围成一圈顺序排号。从第一个人开始报数(从1到3报数),凡报到3的退出圈子,问最后留下的是原来第几号的那位。

题目:有n个人围成一圈顺序排号。从第一个人开始报数(从1到3报数),凡报到3的退出圈子,问最后留下的是原来第几号的那位。 解题思路: 一直遍历这个数组,每隔2个删除一个元素,直到只剩下一个元素 如果遇到了数组的结尾,那么就跳转到开头 ...

Fri May 31 06:49:00 CST 2019 0 1905
约瑟夫问题:有n个人围成一圈顺序排号。从第一个人开始报数(从1到3报数),凡报到3的退出圈子,问最后留下的是原来第几号的那位。

首先,我最大的学习来源不是百度而是我群友~~在这里表白一波我热爱学习的群友们!然后今天群里突然有提出了题目的这个问题:有n个人围成一圈顺序排号。从第一个人开始报数(从1到3报数),凡报到3的退出圈子,问最后留下的是原来第几号的那位。 冥思苦想了半天(好吧,我承认我就审了审题目就百度 ...

Wed Sep 04 01:58:00 CST 2019 0 1043
 
粤ICP备18138465号  © 2018-2026 CODEPRJ.COM