#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 統計線路
相關文章
- 德國泰雷茲--基於模型的鐵路系統設計路線圖模型
- (轉)netstat和awk命令來統計網路連線數
- 統計埠連線數
- 檢視系統網路連線資訊
- Linux學習路線全解,Linux作業系統學習路線Linux作業系統
- 雲端計算學習路線教程大綱課件:FAT檔案系統
- 雲端計算學習路線教程大綱課件:XFS檔案系統
- 會計進階學習路線圖
- 計算機網路與協議學習路線圖計算機網路協議
- 前端系統學習——前端學習路線前端
- 好程式設計師大資料學習路線之大資料自學路線二程式設計師大資料
- 好程式設計師大資料學習路線之大資料自學路線一程式設計師大資料
- 雲端計算學習路線教程大綱課件:部署網校系統 edusoho
- 雲端計算學習路線教程大綱課件:部署部落格系統wordpress
- 大資料,雲端計算學習路線大資料
- 程式設計師職業路線認識程式設計師
- Windows7系統自動連線無線網路的方法Windows
- win10怎麼開啟無線網路連線 win10系統開啟無線網路連線的教程Win10
- 目前最系統的程式設計師未來職業規劃路線,請收藏程式設計師
- 統計TCP連線數和狀態TCP
- 程式設計字典-Java(JavaEE)學習線路圖程式設計Java
- 程式設計師如何規劃職業路線?程式設計師
- Python程式設計師學習路線圖Python程式設計師
- 計算機網路實驗六:無線接入計算機網路
- DCDC電路設計之FB引腳佈線
- 網路認證計費系統
- 網路連線斷開如何解決 win10系統網路連線經常斷開Win10
- 計算機網路實驗1 網線、配線架與機櫃計算機網路
- scratch路線
- 好程式設計師大資料學習路線分享分散式檔案系統HDFS程式設計師大資料分散式
- 系統程式設計-網路-tcp客戶端伺服器程式設計模型(續)、連線斷開、獲取連線狀態場景程式設計TCP客戶端伺服器模型
- Win10系統連線無線網路時提示你目前沒有連線到任何網路怎麼解決Win10
- win10系統下無線網路如何禁用Win10
- linux系統檢視網路連線情況Linux
- 什麼叫做雲端計算?雲端計算基礎學習路線
- Win10系統連線網路時提示無法連線到此網路錯誤如何解決Win10
- 在UnityUI中繪製線狀統計圖UnityUI
- 網際網路是如何連線的:計網概述
- 好程式設計師Java學習路線之集程式設計師Java