題目
小明剛剛看完電影《第39級台階》,離開電影院的時候,他數了數禮堂前的台階數,恰好是39級!
站在台階前,他突然又想著乙個問題:
如果我每一步只能邁上1個或2個台階。先邁左腳,然後左右交替,最後一步是邁右腳,也就是說一共要走偶數步。那麼,上完39級台階,有多少種不同的上法呢?
請你利用計算機的優勢,幫助小明尋找答案。
解題思路1
dp[1]
=0,dp[2]=
1,dp[3]
=2,dp[4]=
2
code
dp =[0
]*40dp[1]
=0dp[2]=
1dp[3]
=2dp[4]=
2for i in
range(5
,40):
dp[i]
= dp[i -2]
+ dp[i -3]
*2+ dp[i -4]
print
(dp[39]
)51167078
解題思路2
import numpy
dp = numpy.zeros((40
,2))
#方法2
dp[1][
0]=0
dp[1][
1]=1
dp[2][
0]=1
dp[2][
1]=1
code
import numpy
dp = numpy.zeros((40
,2))
#方法2
dp[1][
0]=0
dp[1][
1]=1
dp[2][
0]=1
dp[2][
1]=1
for i in
range(3
,40):
dp[i][0
]= dp[i-1]
[1]+ dp[i-2]
[1] dp[i][1
]= dp[i-1]
[0]+ dp[i-2]
[0]print
(dp[39]
[0])
51167078.0
藍橋杯 第39級台階
小明剛剛看完電影 第39級台階 離開電影院的時候,他數了數禮堂前的台階數,恰好是39級 站在台階前,他突然又想著乙個問題 如果我每一步只能邁上1個或2個台階。先邁左腳,然後左右交替,最後一步是邁右腳,也就是說一共要走偶數步。那麼,上完39級台階,有多少種不同的上法呢?請你利用計算機的優勢,幫助小明尋...
藍橋杯 第39級台階
小明剛剛看完電影 第39級台階 離開電影院的時候,他數了數禮堂前的台階數,恰好是39級 站在台階前,他突然又想著乙個問題 如果我每一步只能邁上1個或2個台階。先邁左腳,然後左右交替,最後一步是邁右腳,也就是說一共要走偶數步。那麼,上完39級台階,有多少種不同的上法呢?請你利用計算機的優勢,幫助小明尋...
第39級台階 藍橋杯
小明剛剛看完電影 第39級台階 離開電影院的時候,他數了數禮堂前的台階數,恰好是39級 站在台階前,他突然又想著乙個問題 如果我每一步只能邁上1個或2個台階。先邁左腳,然後左右交替,最後一步是邁右腳,也就是說一共要走偶數步。那麼,上完39級台階,有多少種不同的上法呢?請你利用計算機的優勢,幫助小明尋...