下面是小编整理的约瑟夫问题的Python和C++求解方法(共含7篇),希望能帮助到大家!同时,但愿您也能像本文投稿人“Shinnki”一样,积极向本站投稿分享好文章。
作者:prehistoric 字体:[增加 减小] 类型: 时间:-08-20
这篇文章主要介绍了约瑟夫问题的Python和C++求解方法,通过其示例我们也可以看出如今写法最简洁的编程语言和最复杂的语言之间的对比:D 需要的朋友可以参考下
么是约瑟夫问题?
约瑟夫问题是一个有趣的数学游戏,游戏规则如下:
1、N个人围成一个圈,编号从1开始,依次到N,
2、编号为M的游戏参与者开始报数,报数从1开始,后面的人报数接龙,直到K为止,报数为K的人将出局。
3、出局者的下一个玩家接着从1开始报数,如此循环,直到剩下一个玩家时游戏结束,这个玩家就是游戏获胜者。
那么问题来了,哪个编号是游戏获胜者呢?
下面通过简单的几行python代码来解决这个问题:
#!/usr/bin/env python # Joseph Problem def joseph(total, begins, count): queue = range(1, total + 1) death = (begins + count - 2) % len(queue) for times in range(total - 1): print ‘out: ‘, queue[death] del queue[death] death = (death + count -1) % len(queue) print ‘survivor: ‘, queue[0]
joseph函数中,参数total即上面提到的N,begins即M,count及K,每次循环报数out一个编号,最后剩下的survivor便是游戏获胜者,
而C++的通常实现方法如下:
#include 这是C++语言常见的机试题目,以下程序实现从控制台输入人数N,C并将剔除出队列的人员编号按顺序输出到控制台上。 作者:上大王 字体:[增加 减小] 类型:转载 这篇文章主要介绍了python求解水仙花数的方法,较为详细的分析了水仙花数问题的概念与对应解决方法的实现技巧,需要的朋友可以参考下 本文实例讲述了python求解水仙花数的方法,分享给大家供大家参考。具体如下: 一个N位的十进制正整数,如果它的每个位上的数字的N次方的和等于这个数本身,则称其为花朵数。 #!/usr/bin/pythondef get_flower(n, ofile): D_pow=[pow(i,n) for i in range(0,10)] V_min=1*pow(10,n-1) V_max=sum((9*pow(10,x) for x in range(0,n))) T_count=0 print D_pow, V_max, V_min nums=[1]+[0]*(n-1) print ‘Start:‘, nums idx=n-1 tmp_l=[0]*10 while True: nums[idx]+=1 if nums[idx]<10: j=idx+1 while j 希望本文所述对大家的Python程序设计有所帮助, 物理极值问题的求解方法2 三、用一元二次方程判别式求解极值问题 在中学代数中曾学过,对于一个一元二次方程,当它的判别式B2-4AC≥0时,此方程有实数解。若我们在解物理习题时能选择适当的物理量作为未知量。使其成为一个一元二次方程,巧妙地利用判别式可解决极值问题。 例1.一个质量为m的电子与一个静止的质量为M的原子发生正碰,碰后原子获得一定速度,并有一定的能量E被贮存在这个原子内部。求电子必须具有的最小初动能是多少? 分析与解:设电子碰前的速度为υ1,碰后的速度为,静止的原子被碰后的速度为。 由动量守恒定律有 (1) 由能量守恒有 (2) 在以上两个方程中,有三个未知数,υ1、、,一般的同学认为少一个方程,难以求解。但由(1)式解出代入(2) 可得: 进一步整理可得:(M+m)m-2m2υ1+(m-M)mυ12+2ME=0 此式是关于的'一元二次方程,因电子碰后的速度必为实数,所以此方程的判别式B2-4AC≥0 即 4m4-4(M+m)m[(m-M)m+2ME]≥0 根据上式整理可得: 所以电子必须具有的最小的初动能是 例2.如图2-1所示,顶角为2θ的光滑圆锥,置于磁感应强度大小为B,方向竖直向下的匀强磁场中,现有一个质量为m,带电量为+q的小球,沿圆锥面在水平面作匀速圆周运动,求小球作圆周运动的轨道半径。 分析与解:小球在运动时将受重力mg,圆锥面对球的弹力N,及洛仑兹力f的作用,如图2-2所示。设小球作匀速圆周运动的轨道半径为R,速率为υ。 由正交分解可得 联立(1)、(2)试可得 上式有υ、R两个未知量,似乎不可解,但因为是求极值问题,可用一元二次方程判别式求解。因为υ有实数解,由B2-4AC≥0 即 ∴小球作圆周运动的最小半径为 例3.在掷铅球的运动中,如果铅球出手时距地面的高度为h,速度为υ0,求υ0与水平方向成何角度时,水平射程最远?并求此最大的水平射程Xmax。 分析与解:以出手点为坐标原点,可分别列出水平方向与竖直方向的位移方程。 上式为关于tgθ的一元二次方程。若tgθ存在实数解,则判别式B2-4AC≥0 即 解出结果后,我们可联系实际进行如下验证。设出手高度h=0, 则 θ=45°。这就是我们过去曾经知道的一个物体做斜抛运动,当θ=45°时其射程最远。 随着教改的不断深入,物理教学更加结合实际,物理习题的题型不断拓宽。在中学物理竞赛及高考试卷中都出现了一些具有一定难度的求极值问题。求极值的一般方法是用导数求解。但中学生还没有学过关于异数的数学知识。本专题将分若干小专题,分别介绍符合中学生数学基础的解决极值问题的方法。 一、几何法求极值 在初中几何中我们曾经学过“点到直线的距离以垂线为最短。”此结论对于求极小值问题,是一条捷径。 例1.如图1-1所示,船A从港口P出发去拦截正以速度υ0沿直线航行的船B 。P与B所在航线的垂直距离为a,A起航时与B船相距为b,b>a 。如果略去A船起动时的加速过程,认为它一起航就匀速运动。则A船能拦截到B船的`最小速率为多少? 分析与解:分析本题是两个运动物体求它们之间的相对位置的问题。若以地球为参照系,两个物体都运动,且运动方向不一致,它们之间的相对位置随时间变化的关系比较复杂,一时不容易做出正确的判断与解答。但如果把参照系建立在某一运动的物体上,(如B上)由于以谁为参照系,就认为谁不动,此题就简化为一个物体,(如A)在此运动参照系的运动问题了。当然解一个物体的运动问题比解两个物体都运动的问题自然容易多了。 以B为参照系,B不动,在此参照系中A将具有向左的分速度υ0,如图1-2所示。在此参照系中A只要沿着PB方向就能拦截到B 。应用“点到直线的距离以垂线为最短”的结论。过O点作PB的垂线,交PB于E点,OE即为A船对地的速度的最小值υA,在△AOE中 ∵υA=υ0Sinθ 而 ∴,由于灵活运用了几何知识,使较为复杂的问题,变为简单的几何问题了。 例2.如图1-3所示,重为G的物体与水平地面的动摩擦因数为μ,欲以一个拉力F使物体沿地面匀速前进。问F与水平地面的夹角θ为何值时最省力?这个最小拉力是多大? 分析与解:画出物体的受力分析图,如图1-4所示。物体受到四个力的作用。有重力G、拉力F、地面的支持力N及地面对物体的滑动摩擦力f,其中f=Nμ。这四个力为共点力,合力为零。可将N与f合成为一个力N′,N与f的作用将被N′等效,N′与N、f的关系满足平行四边形法则。再画出物体受N′、G、F的力的矢量三角形,如图1-5所示。N′的方向如图,应用“点到直线 [1] [2] 三、用一元二次方程判别式求解极值问题 在中学代数中曾学过,对于一个一元二次方程,当它的判别式B2-4AC≥0时,此方程有实数解。若我们在解物理习题时能选择适当的物理量作为未知量。使其成为一个一元二次方程,巧妙地利用判别式可解决极值问题。 例1.一个质量为m的电子与一个静止的质量为M的原子发生正碰,碰后原子获得一定速度,并有一定的能量E被贮存在这个原子内部。求电子必须具有的最小初动能是多少? 分析与解:设电子碰前的'速度为υ1,碰后的速度为,静止的原子被碰后的速度为。 由动量守恒定律有 (1) 由能量守恒有 (2) 在以上两个方程中,有三个未知数,υ1、、,一般的同学认为少一个方程,难以求解。但由(1)式解出代入(2) 可得: 进一步整理可得:(M+m)m-2m2υ1+(m-M)mυ12+2ME=0 此式是关于的一元二次方程,因电子碰后的速度必为实数,所以此方程的判别式B2-4AC≥0 即 4m4-4(M+m)m[(m-M)m+2ME]≥0 根据上式整理可得: 所以电子必须具有的最小的初动能是 例2.如图2-1所示,顶角为2θ的光滑圆锥,置于磁感应强度大小为B,方向竖直向下的匀强磁场中,现有一个质量为m,带电量为+q的小球,沿圆锥面在水平面作匀速圆周运动,求小球作圆周运动的轨道半径。 分析与解:小球在运动时将受重力mg,圆锥面对球的弹力N,及洛仑兹力f的作用,如图2-2所示。设小球作匀速圆周运动的轨道半径为R,速率为υ。 由正交分解可得 联立(1)、(2)试可得 上式有υ、R两个未知量,似乎不可解,但因为是求极值问题,可用一元二次方程判别式求解。因为υ有实数解,由B2-4AC≥0 即 ∴小球作圆周运动的最小半径为 例3.在掷铅球的运动中,如果铅球出手时距地面的高度为h,速度为υ0,求υ0与水平方向成何角度时,水平射程最远?并求此最大的水平射程Xmax。 分析与解:以出手点为坐标原点,可分别列出水平方向与竖直方向的位移方程。 上式为关于tgθ的一元二次方程。若tgθ存在实数解,则判别式B2-4AC [1] [2] 具有多种形式信息的指派问题的求解方法 针对具有多种形式信息的多目标指派问题,给出了一种指派问题求解方法.首先描述了区间数、序值、序区间和语言评价等多种信息形式及相关概念;然后通过计算各人员指派信息与正负理想点的距离,得到将某项任务指派给某个人员完成的“机会成本”和“效益”,从而得到指派问题总“机会成本”矩阵和总“效益”矩阵,在此基础上建立了使总成本最小及总效益最大为目标的指派问题数学模型,并采用匈牙利法进行求解.最后,通过一个算例分析说明了本文给出方法的`可行性和有效性. 一种求解数据校正问题的基于经验增强的方法篇2:python求解水仙花数的方法
篇3:物理极值问题的求解方法2
篇4:物理极值问题的求解方法1
篇5:物理极值问题的求解方法2
篇6:具有多种形式信息的指派问题的求解方法
篇7:一种求解数据校正问题的基于经验增强的方法
★ 工伤赔偿问题求解