p1002 過河卒 (動態規劃+遞推)
題目描述
棋盤上a
a點有乙個過河卒,需要走到目標bb
點。卒行走的規則:可以向下、或者向右。同時在棋盤上cc
點有乙個對方的馬,該馬所在的點和所有跳躍一步可達的點稱為對方馬的控制點。因此稱之為
「馬攔過河卒」。
棋盤用座標表示,aa
點(0, 0)
(0,0)、b
b點(n, m)(n
,m)(
nn, m
m為不超過
2020
的整數)
,同樣馬的位置座標是需要給出的。
現在要求你計算出卒從aa
點能夠到達bb
點的路徑的條數,假設馬的位置是固定不動的,並不是卒走一步馬走一步。
輸入輸出格式
輸入格式:
一行四個資料,分別表示bb
點座標和馬的座標。
輸出格式:
乙個資料,表示所有的路徑條數。
輸入輸出樣例
輸入樣例
#1:
複製6 6 3 3
輸出樣例
#1:複製6
說明
結果可能很大!
狀態轉移方程:
dp[i][j]=dp[i-1][j]+dp[i][j-1];
#include#includelong long a,b,n,m;
long long dp[22][22],map[23][23]; //map需要開大點qwq
using namespace std;
void mark(long long x,long long y) //標記馬的控制點
int main()
}printf("%lld",dp[n+1][m+1]);//整體向右下挪一下
return 0;
}
P1002 過河卒 動態規劃
傳送門 思路 搜尋tle了,只能dp了。dp i j dp i j 1 dp i 1 j 對於 點 i,j 只有 i,j 1 和 i 1,j 這兩種選擇,那麼可以推出狀態轉移方程 先定義dp 0 0 1 dp i j dp i 1 j dp i j 1 但如果這樣的話,以0,0為起點會出現點被覆蓋的...
洛谷P1002 過河卒(動態規劃 遞推)
洛谷p1002 題目描述 棋盤上 a 點有乙個過河卒,需要走到目標 b 點。卒行走的規則 可以向下 或者向右。同時在棋盤上 c 點有乙個對方的馬,該馬所在的點和所有跳躍一步可達的點稱為對方馬的控制點。因此稱之為 馬攔過河卒 棋盤用座標表示,a點 0,0 b點 n,m 同樣馬的位置座標是需要給出的。現...
P1002 過河卒(動態規劃dp法)
題目描述 棋盤上 aa 點有乙個過河卒,需要走到目標 bb 點。卒行走的規則 可以向下 或者向右。同時在棋盤上 cc 點有乙個對方的馬,該馬所在的點和所有跳躍一步可達的點稱為對方馬的控制點。因此稱之為 馬攔過河卒 棋盤用座標表示,aa 點 0,0 0,0 bb 點 n,m n,m 同樣馬的位置座標是...