用python来解决一个站队报数问题

 时间:2024-11-15 00:05:03

1、先用1到300来代替这300个人。

用python来解决一个站队报数问题

2、根据c,来构造一个序列a。可以看出来,这个a里面的元素全是3的倍数。

用python来解决一个站队报数问题

3、根据a来删除c里面对应序号的元素,结果删的一塌糊涂。我的目标是把序号是3的倍数的元素删掉,按理说第一轮就应该把c里面3的倍数全部删掉。

用python来解决一个站队报数问题

4、实际上,应该倒过来删。

用python来解决一个站队报数问题

5、可是,上面还是有一个300没有删掉。最后一个元素需要谨慎对待,如果c的元素个数是3的倍数,需要删掉c的最后一个元素,否则不删c的最后一个元素。

用python来解决一个站队报数问题

6、用while循环来处理这个问题。

用python来解决一个站队报数问题

7、处理一个一般的问题:现有v个学生站成一排,从第一个开始1至u报数,全部报完后,凡是报到u的倍数的人退出队伍,其余的人向前靠拢站成新的一排,再按此规则继续进行,直到若干轮后只剩下最后u个人为止。请问最后剩下的u人中的第u个人,他最初在什么位置?比如,当u=8,v=1000的时候,答案是927。

用python来解决一个站队报数问题
  • 如何用python编写一个求分段函数的值的程序
  • 如何编写递归函数,实现整数列表的逆转,并以L[1,2,3]对其进行调用
  • python升序和降序排序
  • python每十个数换行
  • python如何判断奇偶数?
  • 热门搜索
    小报怎么做 里脊肉的做法大全 尘肺病的治疗方法 5566网址大全设首页 免费游戏大全 自闭症治疗方法 胃出血最佳治疗方法 祛斑方法 祝福语大全简短10个字 好词摘抄大全