P1605 迷宮 深度優先搜尋關卡

2021-09-10 06:44:30 字數 1013 閱讀 9111

迷宮 

給定乙個n*m方格的迷宮,迷宮裡有t處障礙,障礙處不可通過。給定起點座標和

終點座標,問: 每個方格最多經過1次,有多少種從起點座標到終點座標的方案。在迷宮

中移動有上下左右四種方式,每次只能移動乙個方格。資料保證起點上沒有障礙。

輸入樣例 輸出樣例

【資料規模】

1≤n,m≤5

輸入格式:

【輸入】

第一行n、m和t,n為行,m為列,t為障礙總數。第二行起點座標sx,sy,終點

座標fx,fy。接下來t行,每行為障礙點的座標。

輸出格式:

【輸出】

給定起點座標和終點座標,問每個方格最多經過1次,從起點座標到終點座標的方

案總數。

輸入樣例#1:複製

2 2 1

1 1 2 2

1 2

輸出樣例#1:複製

1
**:

#includeusing namespace std;

const int n=6;

int maps[n][n]; //構建乙個迷宮圖

int n,m,t;

int vis[n][n]; //記錄該點是否被訪問

int fx,fy; //記錄終點座標

int sx,sy; //記錄起點座標

int ans=0;

int mov[4][2]=,,,}; //儲存移動方向

void dfs(int x,int y)

if(maps[x][y]==3) //碰到障礙則回溯

return ;

for(int i=0;i<4;i++)

}}int main()

dfs(sx,sy);

cout

}

搜尋 P1605 迷宮

迷宮 問題描述 給定乙個n m方格的迷宮,迷宮裡有t處障礙,障礙處不可通過。給定起點座標和 終點座標,問 每個方格最多經過1次,有多少種從起點座標到終點座標的方案。在迷宮 中移動有上下左右四種方式,每次只能移動乙個方格。資料保證起點上沒有障礙。輸入樣例 輸出樣例 資料規模 1 n,m 5 輸入輸出格...

搜尋 P1605 迷宮

迷宮 問題描述 給定乙個n m方格的迷宮,迷宮裡有t處障礙,障礙處不可通過。給定起點座標和 終點座標,問 每個方格最多經過1次,有多少種從起點座標到終點座標的方案。在迷宮 中移動有上下左右四種方式,每次只能移動乙個方格。資料保證起點上沒有障礙。輸入樣例 輸出樣例 資料規模 1 n,m 5 輸入輸出格...

普及練習場 深度優先搜尋 P1605 迷宮

題目描述 給定乙個n m 1 n,m 5 方格的迷宮,迷宮裡有t處障礙,障礙處不可通過。給定起點座標和終點座標,問 每個方格最多經過1次,有多少種從起點座標到終點座標的方案。在迷宮中移動有上下左右四種方式,每次只能移動乙個方格。資料保證起點上沒有障礙。輸入輸出格式 輸入格式 第一行n m和t,n為行...