博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
约瑟夫环问题
阅读量:6987 次
发布时间:2019-06-27

本文共 439 字,大约阅读时间需要 1 分钟。

约瑟夫环是这样的描述:有n个孩子围坐成一圈,编号为0~n-1。现在让这些孩子报数,从0~m-1依次报数。报到m-1的孩子退出圈。求最后留在圈里的孩子。

下面直接看这个问题的数学解法:

上面的数学推到已经完成了,所以代码实现:

 

//n代表有多少人在玩这个游戏//m代表报数的范围是0~m-1int LastRemaining_Solution(unsigned int n, unsigned int m){	if(n == 0)	{		return -1;	}		int s = 0;	if(n == 1)	{		return s;	}		for(int i = 2; i <= n; i++)	{		s = (s + m) % i;	}		return s;}

注意这种算法中每个人的编号不是一成不变的,每淘汰一个人,都要把这个人的下一个人当成是0号位置,对所有的人重新编号。

转载于:https://www.cnblogs.com/stemon/p/4884942.html

你可能感兴趣的文章
Android切近实战(六)
查看>>
mysqlbinlog 使用
查看>>
RHCS中GFS2共享存储扩容
查看>>
Excel如何把非打印区域设置成灰色
查看>>
条件语句整理
查看>>
Office365 SKU-1
查看>>
汉语国际传播思索
查看>>
apache .htaccess重写去除index.php
查看>>
linux Cp .md
查看>>
迅雷软件或将成最大×××散播工具
查看>>
Windows中UltraEdit ctags的配置(2010.4.28更新)
查看>>
TODO:排列组合问题:n个数中取m个
查看>>
27.chown更换所有者
查看>>
grep、egrep以及正则表达式的使用
查看>>
rsync加inotify实现无间隔文件同步
查看>>
系统最小化安装后,使用命令时提示“command not found”
查看>>
ffmpeg2.x开始支持opencl,编译测试
查看>>
python 抽象类分析
查看>>
DNS基本使用--主从服务器的搭建、主从同步、子域授权的实现
查看>>
centos 7
查看>>