抽杀问题 约瑟夫问题.doc

上传人:gs****r 文档编号:1515815 上传时间:2019-03-04 格式:DOC 页数:5 大小:87.50KB
下载 相关 举报
抽杀问题 约瑟夫问题.doc_第1页
第1页 / 共5页
抽杀问题 约瑟夫问题.doc_第2页
第2页 / 共5页
抽杀问题 约瑟夫问题.doc_第3页
第3页 / 共5页
抽杀问题 约瑟夫问题.doc_第4页
第4页 / 共5页
抽杀问题 约瑟夫问题.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、阅读材料世界名题与小升初之:抽杀问题(約瑟夫问题)-马到成功老师在各类竞赛中,各类小升初考试中相关的世界名题出现的概率极高,这是由小升初与数学竞赛的特点决定,这特点便是:知识性,趣味性,思想性相结合。先给大家介绍这一问题的由来。 据说著名犹太历史学家 Josephus 有过以下的故事:在罗马人占领乔塔帕特後,39 個犹太人与 Josephus 及他的朋友躲到一個洞中,39 個犹太人決定宁愿死也不要被人抓到,于是決定了一个自杀方式,41 個人排成一个圆圈,由第 1 個人开始报数,每报数到第 3 人该人就必須自杀,然后再由下一个重新报数,直到所有人都自杀身亡为止。然而 Josephus 和他的朋友

2、并不想遵从,Josephus 要他的朋友先假装遵从,他將朋友与自己安排在第 16 個与第 31 個位置,于是逃过了这场死亡游戏。解法約瑟夫问题可用代数分析來求解,将这个问题扩大好了,假设现在您与 m 个朋友不幸参与了这个游戏,您要如何保护您的朋友?只要画两个圆圈就可以让自己与朋友免于死亡游戏,这两个圆内圈是排列顺序,而外圈是自杀顺序,如下图所示: 使用程式来求解的话,只要将阵列当作环状来处理就可以了,在陈列中由计数 1 开始,每找到三个无资料区就填入一个计数,直接计数 來求解的話,只要將阵列当作环状来处理就可以了,在阵列中由計数 1 开始,每找到三个无资料区就填入一个計数,直而計数达 41为止

3、,然后將阵列由索引 1 开始列出,就可以得知每个位置的自杀順序,这就是約瑟夫排列,41 個人报数 3 的約瑟夫排列如下所示:14 36 1 38 15 2 24 30 3 16 34 4 25 17 5 40 31 6 18 26 7 37 19 8 35 27 9 20 32 10 41 21 11 28 39 12 22 33 13 29 23由上可知,最后一個自杀的是在第 31 个位置,而倒数第二个自杀的要排在第 16 个位置,之前的人都死光了,所以他们也就不知道約瑟夫与他的朋友并没有遵守游戏规则了。小升初常见抽杀考题例举:例 1:把 1999 这 999 个自然数按顺时针的方向依次排列

4、在一个圆圈上(如下图)。从1 开始按顺时针的方向,保留 1,擦去 2;保留 3,擦去 4这样每隔一个数擦去一个数,转圈擦下去。问:最后剩下一个数时,剩下的是哪个数?马到成功解析:可通过找规律得出,如果有 2n个数,那么转一圈擦去一半,剩下 2n-1个数,起始数还是 1;再转一圈擦去剩下的一半,又剩下 2n-2个数,起始数还是 1转了 n 圈后,就剩下一个数是 1。如果有 2n+d(d2n)个数,那么当擦去 d 个数时,剩下 2n个数,此时的第一个数是最后将剩下的数。因为擦去的第 d 个数是 2d,所以 2d+1 就是最后剩下的整数。999=2 9+487,最后剩下的一个数是 4872+1=97

5、5。例 2:1000 个学生坐成一圈,依次编号为 1,2,3,1000。现在进行 1,2 报数:1 号学生报 1 后立即离开,2 号学生报 2 并留下,3 号学生报 1 后立即离开,4 号学生报 2 并留下学生们依次交替报 1 或 2,凡报 1 的学生立即离开,报 2 的学生留下,如此进行下去,直到最后还剩下一个人。问:这个学生的编号是几号?分析:这个问题与上面这题非常相似,只不过本例是报 1 的离开报 2 的留下,而上题相当于报 1 的留下报 2 的离开,由上题的结果可以推出本例的答案。本例中编号为 1 的学生离开后还剩 999 人,此时,如果原来报 2 的全部改报 1 并留下,原来报 1

6、的全部改报 2 并离开,那么,问题就与上面这题完全一样了。因为剩下 999 人时,第 1 人是 2 号,所以最后剩下的人的号码应比上题大 1,是 9751=976(号)。为了加深理解,我们重新解这道题。解:如果有 2n个人,那么报完第 1 圈后,剩下的是 2 的倍数号;报完第 2 圈后,剩下的是22的倍数号报完第 n 圈后,剩下的是 2n的倍数号,此时,只剩下一人,是 2n号。如果有(2 nd)(1d2 n)人,那么当有 d 人退出圈子后还剩下 2n人。因为下一个该退出去的是(2d1)号,所以此时的第(2d1)号相当于 2n人时的第 1 号,而 2d 号相当于 2n人时的第 2n号,所以最后剩

7、下的是第 2d 号。由 1000=29488 知,最后剩下的学生的编号是 4882=976(号)。例 3:有 100 张的一摞卡片,玲玲拿着它们,从最上面的一张开始按如下的顺序进行操作:把最上面的第一张卡片舍去,把下一张卡片放在这一摞卡片的最下面。再把原来的第三张卡片舍去,把下一张卡片放在最下面。反复这样做,直到手中只剩下一张卡片,那么剩下的这张卡片是原来那一摞卡片的第几张?分析与解:这 100 张卡片如果用线串起来,其实还是一个围成一圈的约瑟夫问题。如果上面几题的解法看不太懂,可学学这题,从最简单的情况开始找规律。下面从简单的不失题目性质的问题入手,寻找规律。列表如下:设 这一摞卡片的 张数

8、为N,观察上表可知:(1)当 N=2a(a=0,1,2,3,)时,剩下的这张卡片是原来那一摞卡片的最后一张,即第 2a 张;(2)当 N=2a+m(m2a)时,剩下的这张卡片是原来那一摞卡片的第 2m 张。取 N=100,因为 100=26+36,236=72,所以剩下这张卡片是原来那一摞卡片的第 72张。总结上题及例 1 例 2:可归纳为两种情况:1、 留 1,杀 2 类:剩下号(总数小于总数最大的 2 的次方数)212、 杀 1,留 2 类:剩下号(总数小于总数最大的 2 的次方数)2记住留 1 要加 1,杀 1 不用加 1,总发现有学生在这点上分辨不清。因此可对照:例 1:为“留 1”类

9、,可用:(999512)21975例 2:为“杀 1”类,可用(1000512)2976例 3:为“杀 1”类,可用(10064)272上面的 512,64 都是小于总数的最大的 2 的次方数。再看一道经变化的逆推题:例 4:如下左图,七枚棋子围成一个圆圈,从开始,每隔一个取一个,依次取走、,最后剩下.二十枚棋子围成一个圆圈(如右图),从 开始,每隔一个取一个,最后将只剩下一枚棋子是.实际上例就是抽杀问题的“杀 1 留 2 类” ,右图可假设先从 1 开始取起,那根据规律留下的为:(2016)28 号,想留下 6 号得逆时针倒推 2 枚棋子。则最后结果为 19 号开始。 试试我们玩的扑克牌:例

10、 5:有两副扑克牌,每副牌的排列顺序均按头两张是大王、小王,然后是黑桃、红桃、方块、梅花四种花色排列。每种花色的牌又按 1,2,3,J,Q,K 顺序排列。某人把按上述排列的两副扑克牌上下叠放在一起,然后把第一张丢掉,把第二张放在最底层,再把第三张丢掉,把第四张放在最底层,.如此进行下去,直至最后只剩下一张牌。试问所剩的这张牌是哪一张?解:注意到:如果手中只有 64 张牌,按这样规则丢牌,那么后剩下的应该是第 64 张牌。现在手中有 108 张牌,多出 1086444 张,我们只需按此规定丢掉 44 张后,把 88 张牌放在手中牌的最底层时,这时手中牌恰为 64 张。这样,再丢下去,最后留下的就

11、是原牌顺序的第 88 张,接下来的难点就涉及周期问题了,是哪张牌呢?先去掉一副,再去掉黑桃、红桃各十三张,即为 88-54-2266。按照花色排列应为方块 6。来个再难点的三个数一组的题:例 6:连续自然数 1,2,3,8899 排成一列。从 1 开始,留 1 划掉 2 和 3,留 4 划掉 5和 6这么转圈划下去,最后留下的是哪个数?可仿例 1 与例 2。这道题留 1 划 2 和 3,每次留下三分之一,显然与 3 的 N 次方有关了。当有 3n个数时,留下的数是 1 号。小于 8899 的形如 3n的数是 38=6561,故从 1 号开始按规则划数,划了 8899-6561=2338(个)数

12、后,还剩下 6561 个数。这划去的数中的最后一个 233823=3507,故最后留下 6561个数中的第一个就是 3508。这道题也可归纳出一个规律:“留 1,杀 2,3”型留下的这个数为(总数小于总数的最大的 3 的次方数)231考一考:连续自然数 1,2,3,8899 排成一列。从 1 开始,划掉 1 和 2,留下 3,划掉4 和 5 留下 6这么转圈划下去,最后留下的是哪个数?这道题可定为“杀 1,2 留 3”型,其中的规律与答案就留给你自己去研究了。另外在最前面约瑟夫的介绍中的类型可说成为“留 1、2 杀 3 型”你探索一下这道题有什么规律。最后见识一下隐形抽杀问题:例 7:在纸上写

13、着一列自然数 1,2,99,100。一次操作是指将这列数中最前面的两个数划去,然后把这两个数的和写在数列的最后面,例如一次操作后得到3,4,99,100,3;而两次操作后得到 5,6,99,100,3,7。这样不断进行下去,最后将只剩下一个数。问:最后剩下的数是多少?最初的 100 个数连同后面写下的数,纸上出现的所有数的总和是多少?马到成功解析:在每次操作过程中,数列中添加的数等于划去的两个数之和,因此数列中所有数的和保持不变,于是当最后只剩下一个数时,它就是原来的 100 个数之和,为1+2+99+100=5050。当数列中有 2n 个数时,经过 n 次操作后将被全部划去,同时出现 n 个

14、新数,并且这n 个新数之和等于原来 2n 个数的和。这提示我们去考虑数列包含 2,2 2,2 2 2,项的时刻。6 个 2 连乘是 64,当经过 100-64=36 次操作后,原来的数 1,2,71,362=72被划去,划去的数的和是 1+2+71+72=2628。此时数列中共有 64 个数,并且这 64 个数的和与原来 100 个数的和相等,是 5050。从该时刻起,依次再经过 32,16,8,4,2,1 次操作后,纸上出现的新数的个数依次为 32,16,8,4,2,1。根据前面的分析,每一轮出现的所有新数的和都是 5050。从数列中有 64 个数变为只有 1 个数,操作共进行了 6 轮。 综上所述,纸上写出的所有数之和为 2628+5050+50506=37978。学会了抽杀问题的思路再来理解这题的设计就比较容易了。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 企业管理资料库 > 生产营运

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。