经典的约瑟夫环问题嘛。有点小小的变形而已。给你N个人围成一个环(编号1~N),从第M个人开始,每隔K个人报一次数,报数的人离开该环。
求最后剩下的人的编号。
约瑟夫问题的数学递推解法:
(1)第一个被删除的数为 (m - 1) % n。
(2)假设第二轮的开始数字为k,那么这n - 1个数构成的约瑟夫环为k, k + 1, k + 2, k +3, .....,...
分类:
其他好文 时间:
2014-08-20 00:05:35
阅读次数:
258
原题 N个人围成一个圆圈,首先第一个人从1开始一个人一个人顺时针报数,报道第m个人,令其出列。然后再从下一个人开始,从1顺时针报数,报到第m个人,再令其出列,…如此下去,直到圈中只剩下一个人为止。此人即为优胜者。写一个函数求N个人中的胜者。 我的思路 可以使用一数组,来存放标记为1,2,3,…,N的...
分类:
其他好文 时间:
2014-08-18 00:08:13
阅读次数:
200
[code=C++]
/*
author:jiangxin
Blog:http://blog.csdn.net/jiangxinnju
Function:method of Josephus question
*/
#include
using namespace std;
struct node
{
int seq;
node *...
分类:
编程语言 时间:
2014-08-10 12:59:40
阅读次数:
270
这就是一个约瑟夫问题,前面我写过这样约瑟夫的程序,在这里我只简单的提提。
如何用一维数组来完成一个绕成圆圈的问题呢,首先就是要定义的空间比较大的一维数组,数到第S个就出列的话,那么在数到之前的那些孩子,
要按顺序再挨个排到最后一个孩子后面,比如一共n个孩子,编号是1到n,放在数组p[ ]里,假如没数到第4个就出列,那么整个过程就是:
把p[1]放到p[n+1]中,p[2]放到p[n+2]中,p[3]放到p[n+3]中,让后p[4] 出列,接着p[5]放到p[n+4]上, p[6]放到p[n+5]上,,,以此...
分类:
其他好文 时间:
2014-08-03 18:13:25
阅读次数:
185
Time Limit: 1000MS Memory limit: 65536K
题目描述
n个人想玩残酷的死亡游戏,游戏规则如下:
n个人进行编号,分别从1到n,排成一个圈,顺时针从1开始数到m,数到m的人被杀,剩下的人继续游戏,活到最后的一个人是胜利者。
请输出最后一个人的编号。
输入
输入n和m值。
输出
输出胜利者的编号。
示例输入
5 3
示例...
分类:
其他好文 时间:
2014-07-31 20:49:57
阅读次数:
197
<html>
<head>
<meta http-equiv=‘content-type‘ content=‘text/html;charset=utf-8‘ />
</head>
<body>
<h1>约瑟夫问题解决</h1>
<?php
class Child
{
public $no;
public $next = ...
分类:
其他好文 时间:
2014-07-26 03:32:37
阅读次数:
182
问题描述:有N个人,从1到N的编号,围成一个环,第一个人从1开始报数,每隔第M的人就出局,剩下的人继续报数,以此类推,求最后剩下那个人的编号。
上次去参加去哪儿网的笔试,就考到了这个问题,说的是12个人,一个圈,从第一个人开始报数,1-3,每次报到3的人出局,求最后剩下那个人原来的序号。
可以用一个循环链表来解决,将所有人的编号构成一个循环链表,每隔M就删掉一个节点,直到最后剩下一个。
vo...
分类:
其他好文 时间:
2014-07-23 13:11:14
阅读次数:
230
约瑟夫问题(有时也称为约瑟夫斯置换,是一个出现在计算机科学和数学中的问题。在计算机编程的算法中,类似问题又称为约瑟夫环。又称“丢手绢问题”.)有这样一个故事,15个教徒和15个非教徒在深海遇险必须讲一半的人投到海中,其余的人才能获救,于是想出这样过一个办法,30个人围城一圈。从第一个人开始一次报数,...
分类:
编程语言 时间:
2014-07-22 22:51:37
阅读次数:
263
Joseph
Time Limit: 1000MS
Memory Limit: 10000K
Total Submissions: 47657
Accepted: 17949
Description
The Joseph's problem is notoriously known. For those who are not f...
分类:
其他好文 时间:
2014-07-20 15:42:51
阅读次数:
341
小孩报数问题
Time Limit: 1000MS
Memory Limit: 65536K
Total Submissions: 9883
Accepted: 4597
Description
有N个小孩围成一圈,给他们从1开始依次编号,现指定从第W个开始报数,报到第S个时,该小孩出列,然后从下一个小孩开始报数,仍是报到S个出列...
分类:
其他好文 时间:
2014-07-16 17:20:23
阅读次数:
160