亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

nyoj1246 逃離妖洞 BFS

2019-11-10 18:11:06
字體:
來源:轉載
供稿:網友

                                                                                  逃離妖洞

描述

唐僧不小心又掉入妖怪的迷宮了。這個迷宮有n行m列,共n*m個方格。有的方格是空的,唐僧可以站在上面,有些是有障礙物的不能站。每次唐僧可以移動到相鄰的8個空方格上。但是有些情況不能移動,即從兩個方格的縫隙中移動,如圖:

為了逃出妖怪的洞穴,唐僧需要觸發悟空在某個方格留下的寶物,寶物都是留在空的方格中的。如果唐僧站在某個留有寶物的方格中,那么這個寶物就會被觸發。為了逃離妖洞,唐僧務必按順序依次觸發K個寶物,當最后一個寶物被觸發后,唐僧將會逃離妖洞。

現在唐僧已經知道這個迷宮中的障礙方格和有寶物的方格情況,開始唐僧站在一個給定的方格。問他是否可以逃離妖洞?

輸入一共有T(T<=20)組測試數據。每組含有行數n,列數m。(2<=n,m<=100)以及放有寶物的K(1<= K <=10)個方格。下面n行,每行包含m個字符,用'.'表示空的方格,用'#'表示有障礙物的方格。下面一行是起點位置(x,y),保證是空的方格。下面的K行表示藏有寶物的空方格的位置,藏有寶物的方格是空的,沒有障礙物。兩個寶物不會放在同一個空方格中。需要按所給寶物順序依次觸發寶物。輸出輸出為了逃離妖洞,最少需要多少次移動。如果不能逃離,輸出-1。樣例輸入
3	3 3 2.........1 11 32 23 3 1....#....1 13 32 3 1..#.#.1 12 3樣例輸出
33-1

值得注意的地方

1.  寶物必須依次觸發,也就是說不能提前通過未觸發的寶物。

2. 起點可能位于某個寶物上面,如果不是位于第1個寶物的坐標,那么唐僧不可能逃離的。

AC代碼:

#include<cstdio>#include<cstring>#include<queue>using namespace std;const int maxn = 100 + 5;int d[maxn][maxn];char G[maxn][maxn];int n, m, k;         const int dx[] = {1,-1,0,0, 1,-1,-1,1};const int dy[] = {0,0,1,-1, -1,-1,1,1};struct node{	int x, y;	node(){	}	node(int x, int y):x(x), y(y){	}}h[15];int bfs(int x, int y, char g){	memset(d, -1, sizeof(d));	queue<node>q;	q.push(node(x, y));	d[x][y] = 0;	while(!q.empty()){		node p = q.front();		q.pop();		x = p.x, y = p.y;		if(G[x][y] == g) return d[x][y];		for(int i = 0; i < 8; ++i){			int px = x + dx[i], py = y + dy[i];			if(px < 0 || px >= n || py < 0 || py >= m || G[px][py] == '#' || G[px][py] > g || d[px][py] != -1) continue;			if(i >= 4 && G[x + dx[i]][y] == '#' && G[x][y + dy[i]] == '#') continue;			q.push(node(px, py));			d[px][py] = d[x][y] + 1;		}	}	return -1;}int solve(int x, int y){	if(G[x][y] == '#') return -1;	if(G[x][y] != '.' && G[x][y] > '0') return -1;	int ans = 0;	for(int i = 0; i < k; ++i){		int step = bfs(x, y, '0' + i);		if(step == -1) return -1;		ans += step;		x = h[i].x, y = h[i].y;	}	return ans;}int main(){	int T;	scanf("%d", &T);	while(T--){		scanf("%d%d%d", &n, &m, &k);		for(int i = 0; i < n; ++i){			scanf("%s", G[i]);		} 		int x, y;		scanf("%d%d", &x, &y);		int x1, y1; //寶物的坐標 		for(int i = 0; i < k; ++i){			scanf("%d%d", &x1, &y1);			h[i] = node(x1 - 1, y1 - 1);			G[x1 - 1][y1 - 1] = i + '0';		}		PRintf("%d/n",solve(x - 1, y - 1));	}	return 0;}如有不當之處歡迎指出!


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
一个人看的www久久| 91精品在线看| 久久国产精品亚洲| 色琪琪综合男人的天堂aⅴ视频| 亚洲自拍高清视频网站| 日韩国产高清污视频在线观看| 久久精品国产99国产精品澳门| 国产精品专区一| 国产亚洲欧美一区| 亚洲香蕉伊综合在人在线视看| 色偷偷偷综合中文字幕;dd| 国产亚洲精品久久久久动| 国产丝袜高跟一区| 精品国产视频在线| 社区色欧美激情 | 亚洲国产一区自拍| 92国产精品久久久久首页| 国产亚洲综合久久| 日韩成人在线视频网站| 亚洲欧美制服中文字幕| 精品在线观看国产| 亚洲欧美在线看| 精品人伦一区二区三区蜜桃网站| 欧美性理论片在线观看片免费| 欧美高清激情视频| 久久久噜噜噜久久| 精品性高朝久久久久久久| 日本韩国在线不卡| 91在线无精精品一区二区| 疯狂蹂躏欧美一区二区精品| 国产精品久久久久久av福利| 国产精品九九久久久久久久| 国产精品综合不卡av| 精品女厕一区二区三区| 欧美巨大黑人极品精男| 国产精品免费久久久| 欧美自拍大量在线观看| 在线看欧美日韩| 日本午夜在线亚洲.国产| 97在线日本国产| 亚洲精品电影网在线观看| 日韩av色综合| 欧美日韩中文字幕在线| 国产在线播放不卡| 亚洲精品视频网上网址在线观看| 亚洲精品免费在线视频| 欧美成人午夜激情| 97视频在线观看网址| 久久久久久有精品国产| 91久久精品一区| 欧洲亚洲妇女av| 日本久久久久亚洲中字幕| 亚洲精品www| 亚洲第一视频在线观看| 欧美第一淫aaasss性| 亚洲精品大尺度| 国产日本欧美一区二区三区| 亚洲成人中文字幕| 精品久久久国产精品999| 国产日韩av高清| 精品久久久久久久久国产字幕| 精品二区三区线观看| 亚洲精品国产精品乱码不99按摩| 亚洲天堂av图片| 欧美日韩免费区域视频在线观看| 亚洲色图激情小说| 亚洲第一免费播放区| 亚洲欧美精品伊人久久| 欧美老女人bb| 欧美在线亚洲一区| 日韩欧美高清在线视频| 国产精品视频久久久久| 国产精品羞羞答答| 欧美中文在线观看| 亚洲日本欧美中文幕| 久久久久久久久久久免费精品| 操人视频在线观看欧美| 一个人看的www久久| 欧美激情视频一区二区| 国产成人久久精品| 成人黄色av播放免费| 成人免费视频97| 欧美最顶级的aⅴ艳星| 国产福利视频一区二区| 91美女高潮出水| 成人激情视频在线| 国产精品久在线观看| 最近2019中文字幕在线高清| 国产欧美亚洲精品| 欧美不卡视频一区发布| 91视频免费在线| 成人黄色免费网站在线观看| 欧美午夜精品久久久久久久| 精品久久久香蕉免费精品视频| 亚洲欧美激情视频| 国内偷自视频区视频综合| 91精品免费视频| 国产欧美中文字幕| 国产视频福利一区| 欧日韩不卡在线视频| 国产成人激情小视频| 国产在线视频2019最新视频| 国产精品一区二区久久| 久久久精品在线观看| 亚洲自拍欧美另类| 最新69国产成人精品视频免费| 亚洲国产欧美一区二区丝袜黑人| 亚洲免费中文字幕| 国产精品视频男人的天堂| 成人久久一区二区| 欧美成人免费视频| 中文日韩在线观看| www.xxxx欧美| 欧美日韩国产精品一区二区不卡中文| 清纯唯美日韩制服另类| 亚洲精品一区在线观看香蕉| 亚洲第一精品久久忘忧草社区| 国产精品自产拍在线观| 国产成人精品电影| 性欧美在线看片a免费观看| 国产91精品久久久久| 日本中文字幕久久看| zzijzzij亚洲日本成熟少妇| 富二代精品短视频| 粗暴蹂躏中文一区二区三区| 国产91精品久久久久| 精品人伦一区二区三区蜜桃免费| 国产精品久久999| 亚洲aaaaaa| 日韩不卡在线观看| 一本色道久久综合狠狠躁篇的优点| 另类少妇人与禽zozz0性伦| 亚洲午夜国产成人av电影男同| 免费不卡在线观看av| 欧美影院成年免费版| 97国产一区二区精品久久呦| 久久国产精品偷| 久久99视频精品| 欧美噜噜久久久xxx| 午夜剧场成人观在线视频免费观看| 日韩精品极品视频免费观看| 亚洲男子天堂网| 奇门遁甲1982国语版免费观看高清| 日韩av网站电影| 北条麻妃99精品青青久久| 日韩在线中文字| 欧美精品一区在线播放| 亚洲精品国产suv| 亚洲精品国产综合久久| 久久精品99国产精品酒店日本| 国产精品美女久久久久av超清| 日韩av在线网页| 色在人av网站天堂精品| 欧美贵妇videos办公室| 欧美激情喷水视频| 日韩美女免费观看| 国产精品久久久久久久一区探花| 久久久免费观看视频| 精品久久久一区二区| 55夜色66夜色国产精品视频| 久久久久久欧美| 欧美激情一级精品国产| 国产精品一区久久久| 国产精品久久久久999|