藍橋 穿越雷區

2021-08-19 17:34:16 字數 958 閱讀 9394

x星的坦克戰車很奇怪,它必須交替地穿越正能量輻射區和負能量輻射區才能保持正常運轉,否則將報廢。 

某坦克需要從a區到b區去(a,b區本身是安全區,沒有正能量或負能量特徵),怎樣走才能路徑最短?

已知的地圖是乙個方陣,上面用字母標出了a,b區,其它區都標了正號或負號分別表示正負能量輻射區。 

例如: 

a + - + - 

- + - - + 

- + + + - 

+ - + - + 

b + - + -

坦克車只能水平或垂直方向上移動到相鄰的區。

資料格式要求:

輸入第一行是乙個整數n,表示方陣的大小, 4<=n<100 

接下來是n行,每行有n個資料,可能是a,b,+,-中的某乙個,中間用空格分開。 

a,b都只出現一次。

要求輸出乙個整數,表示坦克從a區到b區的最少移動步數。 

如果沒有方案,則輸出-1

例如: 

使用者輸入: 

#include#includeusing namespace std;

char mp[105][105];

int vis[105][105];

int dx[4]=;

int dy[4]=;

int mn=10000,n;

int l[50][2];

int judge=0;

void dfs(int x,int y,int way,char last)

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

if(vis[xx][yy]==0)

}}int main()

} }vis[sx][sy]=1;

dfs(sx,sy,0,'a');

if(judge==1)

cout

cout

}

藍橋杯 穿越雷區

x星的坦克戰車很奇怪,它必須交替地穿越正能量輻射區和負能量輻射區才能保持正常運轉,否則將報廢。某坦克需要從a區到b區去 a,b區本身是安全區,沒有正能量或負能量特徵 怎樣走才能路徑最短?已知的地圖是乙個方陣,上面用字母標出了a,b區,其它區都標了正號或負號分別表示正負能量輻射區。例如 a b 坦克車...

穿越雷區 藍橋杯 DFS BFS

題目描述 x星的坦克戰車很奇怪,它必須交替地穿越正能量輻射區和負能量輻射區才能保持正常運轉,否則將報廢。某坦克需要從a區到b區去 a,b區本身是安全區,沒有正能量或負能量特徵 怎樣走才能路徑最短?已知的地圖是乙個方陣,上面用字母標出了a,b區,其它區都標了正號或負號分別表示正負能量輻射區。例如 a ...

藍橋杯之穿越雷區 BFS

本題為2015年第六屆藍橋杯c語言a組試題,第4題。考點 廣度優先搜尋 bfs 廣搜一般用來解決 最短 最少 問題,需用到佇列。已知的地圖是乙個方陣,上面用字母標出了a,b區,其它區都標了正號或負號分別表示正負能量輻射區。例如 a b 坦克車只能水平或垂直方向上移動到相鄰的區。資料格式要求 輸入第一...