def move(n, a, b, c):
if n == 1:
print a,'-->',c
return
else:
move(n-1,a,c,b)
print a,'-->',c
move(n-1,b,a,c)
move(4, 'A', 'B', 'C')
其实递归不用想那么复杂,找到做事的最小粒度就可以了,这个最小粒度就是每次只能移一个嘛。
然后你让函数用栈的形式帮你去找,你要干嘛,只需要干嘛,然后一直找到第一步,完成第一步后,
函数一层一层的返回帮你完成后面一步。
if n == 1:
print a,'-->',c
return
else:
move(n-1,a,c,b)
print a,'-->',c
move(n-1,b,a,c)
move(4, 'A', 'B', 'C')
其实递归不用想那么复杂,找到做事的最小粒度就可以了,这个最小粒度就是每次只能移一个嘛。
然后你让函数用栈的形式帮你去找,你要干嘛,只需要干嘛,然后一直找到第一步,完成第一步后,
函数一层一层的返回帮你完成后面一步。
2016-08-17
sum = 0
x = 1
n = 1
while True:
sum=sum+(x+2**(x-1))
x=x+1
n=n+1
if n>20:
break
print sum
结果出来没错,但就是不通过。。
x = 1
n = 1
while True:
sum=sum+(x+2**(x-1))
x=x+1
n=n+1
if n>20:
break
print sum
结果出来没错,但就是不通过。。
2016-08-17
qq_sel鱼_0你的程序有问题,这道题目是求的L和S并集剔除掉交集的部分。如果你的s的数据改一下,就不符合题目的要求了。 s = set(['Adam', 'Lisa','Jason', 'Paul']) L = ['Adam', 'Lisa', 'Bart', 'Paul'] t = set(L) for a in s: t.remove(a) print t 这样在s中加进去一个在S中存在但是在L中不存在的数据,那么t的remove时候就会报错
2016-08-17
>>> sum = 0
>>> x = 1
>>> while x < 100:
... sum = x+sum
... x = x + 2
... print sum
File "<stdin>", line 4
print sum
^
SyntaxError: invalid syntax
哪里错了?
>>> x = 1
>>> while x < 100:
... sum = x+sum
... x = x + 2
... print sum
File "<stdin>", line 4
print sum
^
SyntaxError: invalid syntax
哪里错了?
2016-08-16
我居然发现了一个bug
sum = 0
x = 1
while x<100:
sum=sum+x
x=x+1
print sum
这样也可以.
sum = 0
x = 1
while x<100:
sum=sum+x
x=x+1
print sum
这样也可以.
2016-08-16
难道只有我一个人是这样做的吗??
L = [95.5,85,59]
print L[0]
print L[1]
print L[2]
print L[2]
L = [95.5,85,59]
print L[0]
print L[1]
print L[2]
print L[2]
2016-08-16
for x in [m for m in range(10, 100) if m%10 > m/10]:
print x
print x
2016-08-16