描述
江鳥突然想到了乙個迷宮逃離的遊戲,話說有三個人被困於乙個n*m的迷宮裡,他們三人都可以向上、向下、向左、向右四個方向進行走動,當然他們所在的初始位置沒有障礙物,同時只能走到沒有障礙物的格仔上,現在江鳥要問你最少需要去掉多少個格仔的障礙物,可以使他們三人之間兩兩互相可達。
輸入輸入包括多組測試資料,每組測試資料第一行為兩個整數n和m(2<=n,m<=100),接下來n行,每行m個字元,其中:『w』、『w』、『f』分別代表那三個人;『.』代表沒有障礙物的格仔,『#』代表有障礙物的格仔。
輸出每組資料輸出一行。
樣例輸入
4 4w...
####
.##f
w##.
4 4w...
....
.##f
.w..
樣例輸出20
bfs、列舉中間點
#include #include#include
#include
#include
#include
using
namespace
std;
#define inf 0x7fffffff
#define n 110
struct
node
;int
n,m;
node p[4];
char
mpt[n][n];
int vis[n][n][4
];int dir[4][2]=;
void bfs(int
index)}}
}int
main()}}
for(int i=1;i<=n;i++)
for(int i=1;i<=n;i++)
}bfs(1);
bfs(2);
bfs(3);
int ans=inf;
for(int i=1;i<=n;i++)
if(mpt[i][j]=='
#') tmp-=2
;
if(tmptmp;}}
cout
}return0;
}
dfs bfs 逃離迷宮
給定乙個m n m行,n列 的迷宮,迷宮中有兩個位置,gloria想從迷宮的乙個位置走到另外乙個位置,當然迷宮中有些地方是空地,gloria可以穿越,有些地方是障礙,她必須繞行,從迷宮的乙個位置,只能走到與它相鄰的4個位置中,當然在行走過程中,gloria不能走到迷宮外面去。令人頭痛的是,glori...
A 逃離迷宮 DFS
給定乙個m n m行,n列 的迷宮,迷宮中有兩個位置,gloria想從迷宮的乙個位置走到另外乙個位置,當然迷宮中有些地方是空地,gloria可以穿越,有些地方是障礙,她必須繞行,從迷宮的乙個位置,只能走到與它相鄰的4個位置中,當然在行走過程中,gloria不能走到迷宮外面去。令人頭痛的是,glori...
逃離迷宮6
小hi被壞女巫抓進裡一間有n x n個格仔組成的矩陣迷宮。有些格仔是小hi可以經過的,我們用 表示 有些格仔上有障礙物小hi不能經過,我們用 表示。小hi的起始位置在左上角,他需要到達右下角的格仔才能逃離迷宮。小hi每一步可以移動到上下左右四個方向相鄰的格仔上,前提是目標格式必須是沒有障礙的。現在小...