#include<bits/stdc++.h>
using namespace std;
//地圖陣列,標記陣列
int G[105][105],vis[105][105];
//方向陣列:上右下左
int dx[5]={-1,0,1,0},dy[5]={0,1,0,-1};
int n,cnt=0;//用來接收迷宮大小,cnt統計路線數量
void dfs(int x,int y){//傳入搜的位置座標
//找到終點,統計+1
if(G[x][y]==2){
cnt++;//統計數量
return;//結束搜尋
}
for(int i=0;i<4;i++){//搜尋上右下左四個點
int xx=x+dx[i],yy=y+dy[i];//拿到下一個點的座標
//搜尋的點不能超出地圖
//該點沒有被搜尋過,該點可以通行(不為1都可以通行)
if(xx>=1&&xx<=n&&yy>=1&&yy<=n
&&G[xx][yy]!=1&&vis[xx][yy]==0){
//把該點標記為搜尋過
vis[xx][yy]=1;
//遞迴搜尋過程
dfs(xx,yy);
//統計路線需要加上回溯,把當前點標記為未搜尋過
vis[xx][yy]=0;
}
}
}
int main() {
cin>>n;//接收地圖大小
for(int i=1;i<=n;i++){//接收地圖輸入
for(int j=1;j<=n;j++){
cin>>G[i][j];
}
}
vis[1][1]=1;//先標記第一個位置被搜尋過
dfs(1,1);
cout<<cnt;//輸出統計結果
return 0;
}
2935 統計線路
相關文章
- 2937 八個方向統計線路
- 德國泰雷茲--基於模型的鐵路系統設計路線圖模型
- Linux學習路線全解,Linux作業系統學習路線Linux作業系統
- springboot線上人數統計Spring Boot
- 會計進階學習路線圖
- 計算機網路與協議學習路線圖計算機網路協議
- 雲端計算學習路線教程大綱課件:XFS檔案系統
- 雲端計算學習路線教程大綱課件:FAT檔案系統
- 2019 PHP程式設計師發展路線PHP程式設計師
- Flutter 1.12 最新 hotfix 與 2020 路線計劃Flutter
- 線上電影系統設計
- 好程式設計師大資料學習路線之大資料自學路線二程式設計師大資料
- 好程式設計師大資料學習路線之大資料自學路線一程式設計師大資料
- 雲端計算學習路線教程大綱課件:部署網校系統 edusoho
- 雲端計算學習路線教程大綱課件:部署部落格系統wordpress
- 目前最系統的程式設計師未來職業規劃路線,請收藏程式設計師
- win10怎麼開啟無線網路連線 win10系統開啟無線網路連線的教程Win10
- linux系統檢視網路連線情況Linux
- 程式設計字典-Java(JavaEE)學習線路圖程式設計Java
- 程式設計師如何規劃職業路線?程式設計師
- DCDC電路設計之FB引腳佈線
- 2021年全棧程式設計師路線圖全棧程式設計師
- Servlet監聽器統計線上人數Servlet
- 統計TCP連線數和狀態TCP
- 好程式設計師大資料學習路線分享分散式檔案系統HDFS程式設計師大資料分散式
- 系統程式設計-網路-tcp客戶端伺服器程式設計模型(續)、連線斷開、獲取連線狀態場景程式設計TCP客戶端伺服器模型
- 網路連線斷開如何解決 win10系統網路連線經常斷開Win10
- 2019年網路安全威脅統計
- 線上消費行為統計與分析系統設計和實現
- Win10系統連線無線網路時提示你目前沒有連線到任何網路怎麼解決Win10
- 大資料Hadoop系統性學習路線圖大資料Hadoop
- win10系統下無線網路如何禁用Win10
- scratch路線
- 雲端計算學習路線圖素材課件:Linux效能最佳化IO子系統Linux
- Win10系統連線網路時提示無法連線到此網路錯誤如何解決Win10
- 阿里畢玄:程式設計師的成長路線阿里程式設計師
- 寫給Java程式設計師學習路線圖Java程式設計師
- 計算機小白大資料學習線路圖計算機大資料