iis 里没有网站吗,什么是网站开发类课程,南京江北新区,西安企业黄页网站前一篇文章最后一个算法的实现有一点问题#xff0c;问题原因来自python中list删除数据会导致数据前移#xff0c;针对这个特性目前没有一个很好的解决方案#xff0c;所以在这里使用另外一个角度去实现#xff0c;即将报到9的人编号置为0#xff0c;在下次喊的时候#…前一篇文章最后一个算法的实现有一点问题问题原因来自python中list删除数据会导致数据前移针对这个特性目前没有一个很好的解决方案所以在这里使用另外一个角度去实现即将报到9的人编号置为0在下次喊的时候让为0的结果直接pass即可。里边还有一个设置状态量让while循环退出的思想。
#从30个人中选择15个所有人围成一圈数1-9的数喊到9的人出列即可
#让每个人报数按照1-9对每次报数的人进行记录将报到9的人剔除即可(在这里其实也是用基础的排序即30人的编号作为起始的编号主要信息初始化编号和每个人所报数字且每报到9后需要重新从1开始报数)
import sys
def nine_retire():origin_num [i for i in range(1,31)]temp_list []s 1while_state 1#逻辑本身还是有问题应该是每删除一次就行判断一次否则会有隐患存在# while len(temp_list) 15:while True:if while_state 0:breakelse:for j in origin_num:if len(temp_list) 15:while_state 0breakelse:if s 9 and j ! 0:temp_list.append(j)origin_num[origin_num.index(j)] 0s 1elif j 0:passelse:s 1print(temp_list)print(len(temp_list))print([i for i in origin_num if i ! 0])if __name__ __main__:nine_retire()