馬在中國象棋以日字形規則移動。
請編寫一段程式,給定n×m大小的棋盤,以及馬的初始位置(x,y),要求不能重複經過棋盤上的同乙個點,計算馬可以有多少途徑遍歷棋盤上的所有點。
輸入格式:
第一行為整數t(t < 10),表示測試資料組數。
每一組測試資料報含一行,為四個整數,分別為棋盤的大小以及初始位置座標n,m,x,y。(0≤x≤n-1,0≤y≤m-1, m < 10, n < 10)。
輸出格式:
每組測試資料報含一行,為乙個整數,表示馬能遍歷棋盤的途徑總數,0為無法遍歷一次。
輸入樣例:
154
23
輸出樣例:
4
#include
#define n 10
using
namespace std;
int n, m;
int xx, yy;
char maps[n]
[n];
int vis[n]
[n], cnt;
int dir[8]
[2]=
,,,,
,,,}
;void
dfs(
int x,
int y,
int step)
for(
int i =
0; i <
8; i++)}
}int
main()
return0;
}
7 9 跳馬問題 20 分
7 9 跳馬問題 20 分 給定m n mn 100 的棋盤,左上角的點座標 1,1 一匹馬從 1,2 點開始沿著日字型 有8種 跳完棋盤上所有點,且每乙個點都只能跳一次,馬每一步從 x,y 點起跳時優先選擇的方向對應座標偏移為 有的棋盤會有很多種跳法,現在比較感興趣的是馬的第k種跳法是什麼?輸入格...
1216 跳馬問題
時間限制 1 s 空間限制 128000 kb 題目等級 gold description 題目輸入描述 input description 第一行兩個正整數m,n 0輸出描述 output description 乙個正整數,表示方案總數對123456求餘 樣例輸入 sample input 3 ...
49 跳馬問題
輸入檔案 horse.in輸出檔案 horse.out簡單對比 時間限制 1 s 記憶體限制 128 mb 問題描述 有乙隻中國象棋中的 馬 在半張棋盤的左上角出發,向右下角跳去。規定只許向右跳 可上,可下,但不允許向左跳 請程式設計求從起點 a 1,1 到終點 b m,n 共有多少種不同跳法。輸入...