Python小孩分糖果我的解法
10个小孩围成一圈分糖果,老师顺次分给每个人的糖块数为12,2,8,22,16,4,10,6, 14,20。
然后按下列规则调整,所有小孩同时把自己的糖果分一半给右边的小孩,糖块数变为奇数的人,
再向老师补要一块,问经过多少次调整后,大家的糖块一样多,且每人多少块。
sugars = [10,2,8,22,16,4,10,6,14,20] t = [0,0,0,0,0,0,0,0,0,0] i = 0 while True: for i in range(10): if sugars[i]%2==1:sugars[i] += 1 t[i] = sugars[i] = int(sugars[i]/2) for i in range(0,10): sugars[i] += int(t[i-1]) # 右边的得到前面糖果的一半 print(sugars) if len(set(sugars))==1:break
发表评论