動態規劃練習 移動路線

2021-07-30 23:22:15 字數 808 閱讀 3162

題目要求:

×桌子上有乙個m行n列的方格矩陣,將每個方格用座標表示,行座標從下到上依次遞增,列座標從左至右依次遞增,左下角方格的座標為(1,1),則右上角方格的座標為(m,n)。

小明是個調皮的孩子,一天他捉來乙隻螞蟻,不小心把螞蟻的右腳弄傷了,於是螞蟻只能向上或向右移動。小明把這只螞蟻放在左下角的方格中,螞蟻從

左下角的方格中移動到右上角的方格中,每步移動乙個方格。螞蟻始終在方格矩陣內移動,請計算出不同的移動路線的數目。

對於1行1列的方格矩陣,螞蟻原地移動,移動路線數為1;對於1行2列(或2行1列)的方格矩陣,螞蟻只需一次向右(或向上)移動,移動路線數也為1……對於乙個2行3列的方格矩陣,如下圖所示:

|(2,1)|(2,2)|(2,3)|

|(1,1)|(1,2)|(1,3)|

螞蟻共有3種移動路線:

路線1:(1,1) → (1,2) → (1,3) → (2,3)

路線2:(1,1) → (1,2) → (2,2) → (2,3)

路線3:(1,1) → (2,1) → (2,2) → (2,3)

題目思路:

設a[i][j]代表螞蟻走到第(i,j)點的移動路線種數,狀態轉移方程 a[i][j]=a[i-1][j]+a[i][j-1]。邊界值a[i][1]=1,a[1][j]=1。輸出a[m][n]即為移動到(m,n)點的移動路線種數。

#include

using

namespace std;

intmain

() cout

}

感悟:水題。。。

動態規劃練習09 移動路線

題目簡要 描述 桌子上有乙個m行n列的方格矩陣,將每個方格用座標表示,行座標從下到上依次遞增,列座標從左至右依次遞增,左下角方格的座標為 1,1 則右上角方格的座標為 m,n 小明是個調皮的孩子,一天他捉來乙隻螞蟻,不小心把螞蟻的右腳弄傷了,於是螞蟻只能向上或向右移動。小明把這只螞蟻放在左下角的方格...

動態規劃練習一 09 移動路線

描述 桌子上有乙個m行n列的方格矩陣,將每個方格用座標表示,行座標從下到上依次遞增,列座標從左至右依次遞增,左下角方格的座標為 1,1 則右上角方格的座標為 m,n 小明是個調皮的孩子,一天他捉來乙隻螞蟻,不小心把螞蟻的右腳弄傷了,於是螞蟻只能向上或向右移動。小明把這只螞蟻放在左下角的方格中,螞蟻從...

動態規劃3 移動路線

描述 桌子上有乙個m行n列的方格矩陣,將每個方格用座標表示,行座標從下到上依次遞增,列座標從左至右依次遞增,左下角方格的座標為 1,1 則右上角方格的座標為 m,n 小明是個調皮的孩子,一天他捉來乙隻螞蟻,不小心把螞蟻的右腳弄傷了,於是螞蟻只能向上或向右移動。小明把這只螞蟻放在左下角的方格中,螞蟻從...