棋盤裡的數學(qduoj 記憶化搜尋)

2021-09-05 10:32:38 字數 752 閱讀 2290

description

lhcoder有乙個n行m列的棋盤,有一顆棋子從左上角(1,1)開始移動,每次只能往右或者往下移動一格,到右下角(n,m)一共有多少移動方案?

input

有多組測試資料,每組測試資料中有兩個整數n和m(2 <= n, m <= 1000),代表為n行m列的棋盤。

output

乙個整數p,代表從左上角(1,1)移動到右下角(n,m)的方案數,由於方案數可能比較大,結果請對99991取模。

sample input 1

2 2sample output 1

2sample input 2

2 3sample output 2

當時還以為是組合數學,還以為是數論的題目。但是資料太大,我有比較菜。

我們可以逆過來想,當我們到達(n,m)的時候,逆著往回退,這樣開乙個陣列記錄一下,直到退回到(1,1),這個時候的總數就是我們所需的種類數了。

記憶化搜尋

**如下:

#include#include#include#define ll long long

#define mod 99991

using namespace std;

const int maxx=1e3+10;

int pre[maxx][maxx];

int n,m;

int dfs(int x,int y)

int main()

}

棋盤裡的數字(dfs)

描述 lhcoder有乙個n行m列的棋盤,有一顆棋子從左上角 1,1 開始移動,每次只能往右或者往下移動一格,到右下角 n,m 一共有多少移動方案?輸入有多組測試資料,每組測試資料中有兩個整數n和m 2 n,m 1000 代表為n行m列的棋盤。輸出乙個整數p,代表從左上角 1,1 移動到右下角 n,...

殘缺的棋盤 數學

題目 i.殘缺的棋盤 在西洋棋裡,王是最重要的乙個棋子。每一步,王可以往上下左右或者對角線方向移動一 步,如下圖所示。給定兩個格仔 a r1,c1 b r2,c2 你的任務是計算出乙個王從 a到 b至少需要走多少步。為了 避免題目太簡單,我們從棋盤裡拿掉了乙個格仔 c r3,c3 abc 保證互不相...

組合數學 小兔的棋盤(卡特蘭數)

題目鏈結 小兔的叔叔從外面旅遊回來給她帶來了乙個禮物,小兔高興地跑回自己的房間,拆開一看是乙個棋盤,小兔有所失望。不過沒過幾天發現了棋盤的好玩之處。從起點 0,0 走到終點 n,n 的最短路徑數是c 2n,n 現在小兔又想如果不穿越對角線 但可接觸對角線上的格點 這樣的路徑數有多少?小兔想了很長時間...