[水]ZOJ1539

一列人有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



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章