day18 李白打酒

2021-10-17 14:20:56 字數 1331 閱讀 8196

話說大詩人李白,一生好飲。幸好他從不開車。

一天,他提著酒壺,從家裡出來,酒壺中有酒2鬥。他邊走邊唱:

無事街上走,提壺去打酒。

逢店加一倍,遇花喝一斗。

這一路上,他一共遇到店5次,遇到花10次,已知最後一次遇到的是花,他正好把酒喝光了。

請你計算李白遇到店和花的次序,可以把遇店記為a,遇花記為b。則:babaabbabbabbbb 就是合理的次序。像這樣的答案一共有多少呢?

請你計算出所有可能方案的個數(包含題目給出的)。

注意:通過瀏覽器提交答案。答案是個整數。不要書寫任何多餘的內容。

有點像乙個二叉樹的前序遍歷

def

fun(a, b, c)

: cnt =

0if a ==

0and b ==

1and c ==1:

cnt +=

1if a >0:

# 還有酒店

cnt += fun(a-

1, b, c*2)

# 酒加倍

if b >0:

# 還有花店

cnt += fun(a, b-

1, c-1)

# 酒減一

太可怕了,沒跑出來,以後不敢怎麼用了

from itertools import permutations

cnt =

2ans =

0lst1 =

['a'

for i in

range(5

)]lst2 =

['b'

for j in

range(9

)]lst1.extend(lst2)

print

(lst1)

for tpl in permutations(lst1)

: lst =

list

(tpl)

'b')

for i in lst:

if cnt >=0:

if i ==

"a":

cnt *=

2elif i ==

'b':

cnt -=

1else

:break

else

:if cnt ==0:

ans +=

1

藍橋-李白打酒

李白打酒 DFS

話說大詩人李白,一生好飲。幸好他從不開車。一天,他提著酒壺,從家裡出來,酒壺中有酒2鬥。他邊走邊唱 無事街上走,提壺去打酒。逢店加一倍,遇花喝一斗。這一路上,他一共遇到店5次,遇到花10次,已知最後一次遇到的是花,他正好把酒喝光了。請你計算李白遇到店和花的次序,可以把遇店記為a,遇花記為b。則 ba...

李白打酒問題

近日準備藍橋杯大賽,看到乙個李白打酒的問題,題目如下 話說大詩人李白,一生好飲。幸好他從不開車。一天,他提著酒壺,從家裡出來,酒壺中有酒2鬥。他邊走邊唱 無事街上走,提壺去打酒。逢店加一倍,遇花喝一斗。這一路上,他一共遇到店5次,遇到花10次,已知最後一次遇到的是花,他正好把酒喝光了。請你計算李白遇...

2507 李白打酒

問題及 話說大詩人李白,一生好飲。幸好他從不開車。一天,他提著酒壺,從家裡出來,酒壺中有酒2鬥。他邊走邊唱 無事街上走,提壺去打酒。逢店加一倍,遇花喝一斗。這一路上,他一共遇到店m次,遇到花n次,已知最後一次遇到的是花,他正好把酒喝光了。請你計算李白遇到店和花的次序,可以把遇店記為a,遇花記為b。例...