03 翻牌问题

03 翻牌问题_第1张图片03 翻牌问题_第2张图片

#初始化100张牌 0表示背面 1表示正面

card = [[i,0] for i in range(1,101)]
# print(card)
for j in range(2,101):
    jump = j  # jump 表示跳过的牌数
    pos = j - 1  # pos表示翻动的牌的位置
    print(card[pos][1])
    while pos < len(card):
        card[pos][1] = not card[pos][1]  #这一句是关键 card[pos][1]初始化为0 ,而not card[pos][1]就是ture
        # print(card) 
        pos = pos + jump

for card_save in card:
    if card_save[1] == 0:
        print(card_save[0])

这题不难,关键是要想到如何将翻牌这个动作化为数据语言,

就是这一句:

card[pos][1] = not card[pos][1]  #这一句是关键 card[pos][1]初始化为0 ,而not card[pos][1]就是ture

 

 

 

你可能感兴趣的:(算法)