一列人有n個如果n比3大的話,就可以讓偶數位的人出隊或者奇數位的出隊,3個人就直接出隊,問有多少種出隊方法
直接dfs就好
def dfs(n):
if (n<3):
return 0
if (n==3):
return 1
if (n%2==0):
ret=2*dfs(n/2)
return ret
if (n%2==1):
ret=dfs(n/2)+dfs(n/2+1)
return ret
try:
while True:
n=int(raw_input())
print dfs(n)
except EOFError:
exit