其他分享
首页 > 其他分享> > 数数游戏,输入一个数值,从开始数123,到3去掉这个数,开始新一轮的123,到末尾继续连续从开头数,看最后能剩下哪个数

数数游戏,输入一个数值,从开始数123,到3去掉这个数,开始新一轮的123,到末尾继续连续从开头数,看最后能剩下哪个数

作者:互联网

numb = input("请输入数字")

n_list = list(range(1,int(numb)+1))

#print(n_list)

#第一个方法
# 数数,123,第3需要时删除,最后再接着从第一个数数
def  delnum(list):

    if len(list)>1:
        list.append(list[0])
        list.append(list[1])
        del list[0:3]
        delnum(list)
    else:
        print(list)

#delnum(n_list)
    
#第二个方法


def delnum2(lists):
    n = len(lists)
    new_list = [] 
    if n>2:        
        n_yu = len(lists)%3
        
        if n_yu!=0:
            n_array = lists[-n_yu:]
            del lists[-n_yu:]
            for i in n_array:
                new_list.append(i)
       
        i = 1
        for list in lists:
            if i==3:
                i=1
            else:
                i +=1
                new_list.append(list)
                
        delnum2(new_list)
        
    else :
        lists.pop(0)        
        print(lists)

  
tt = delnum2(n_list)

 

标签:数数,list,lists,123,delnum,new,yu,末尾,append
来源: https://www.cnblogs.com/mdys/p/16116220.html