拜訪 動態規劃

2022-08-19 06:09:08 字數 1197 閱讀 5471

現在有乙個城市銷售經理,需要從公司出發,去拜訪市內的商家,已知他的位置以及商家的位置,但是由於城市道路交通的原因,他只能在左右中選擇乙個方向,在上下中選擇乙個方向,現在問他有多少種方案到達商家位址。

給定乙個地圖map及它的長寬nm,其中1代表經理位置,2代表商家位置,-1代表不能經過的地區,0代表可以經過的地區,請返回方案數,保證一定存在合法路徑。保證矩陣的長寬都小於等於10。

測試樣例:

[[0,1,0],[2,0,0]],2,3
返回:2

1

lass visit

18if(map[i][j]==2)19

22}23}

24if(x1==x2&&y1==y2)

25return0;

26int xt=x11:-1;27

int yt=y11:-1

;28 vectorint>>dp(n,vector(m,1

));29

for(int i=x1+xt;i!=(x2+xt);i+=xt)

3033

for(int j=y1+yt;j!=(y2+yt);j+=yt)

3437

for(int i=x1+xt;i!=(x2+xt);i+=xt)

3843}44

return

dp[x2][y2];45}

46 };

矩陣10   0   1   0    0

0  0    0   0    0

0  0    0   0    0

0  0    0   0    0

0  0    0   2    0

dp0  0   1  1  1  0

0  0   1  0  0  0

0   0   1  0 0  0

0    0  1  0  0  0

0   0   1  0  0  0

dp[i][j]=dp[i-1][j]+dp[i][j-1]

0  0   1  1  1  0

0  0   1  2  3  0

0   0   1 3  6  0

0    0  1  4 10  0

0   0   1  5  15  0

牛客 拜訪 動態規劃

左右中只能選乙個方向,若選擇左只能一直向左走。上下中只能選擇乙個方向,若選擇下只能一直向下。所以有2種情況 1 二者位置在對角線上 2 兩者位置重合或處於同一行或同一列 class visit if map i j 2 同行或同列 這裡應該還能優化到下面的對角線那種情況 懶 if si ei if ...

動態規劃 美團筆試題 拜訪

題目 現在有乙個城市銷售經理,需要從公司出發,去拜訪市內的商家,已知他的位置以及商家的位置,但是由於城市道路交通的原因,他只能在左右中選擇乙個方向,在上下中選擇乙個方向,現在問他有多少種方案到達商家位址。給定乙個地圖map及它的長寬n和m,其中1代表經理位置,2代表商家位置,1代表不能經過的地區,0...

牛客(美團) 拜訪(動態規劃)

現在有乙個城市銷售經理,需要從公司出發,去拜訪市內的商家,已知他的位置以及商家的位置,但是由於城市道路交通的原因,他只能在左右中選擇乙個方向,在上下中選擇乙個方向,現在問他有多少種方案到達商家位址。給定乙個地圖map及它的長寬n和m,其中1代表經理位置,2代表商家位置,1代表不能經過的地區,0代表可...