国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

hdu1026【bfs優(yōu)先隊(duì)列】

2019-11-14 10:23:45
字體:
供稿:網(wǎng)友

Ignatius and the PRincess I

Time Limit: 2000/1000 MS (java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 18095 Accepted Submission(s): 5822 Special Judge

Problem Description The Princess has been abducted by the BEelzebub feng5166, our hero Ignatius has to rescue our pretty Princess. Now he gets into feng5166’s castle. The castle is a large labyrinth. To make the problem simply, we assume the labyrinth is a N*M two-dimensional array which left-top corner is (0,0) and right-bottom corner is (N-1,M-1). Ignatius enters at (0,0), and the door to feng5166’s room is at (N-1,M-1), that is our target. There are some monsters in the castle, if Ignatius meet them, he has to kill them. Here is some rules:

1.Ignatius can only move in four directions(up, down, left, right), one step per second. A step is defined as follow: if current position is (x,y), after a step, Ignatius can only stand on (x-1,y), (x+1,y), (x,y-1) or (x,y+1). 2.The array is marked with some characters and numbers. We define them like this: . : The place where Ignatius can walk on. X : The place is a trap, Ignatius should not walk on it. n : Here is a monster with n HP(1<=n<=9), if Ignatius walk on it, it takes him n seconds to kill the monster.

Your task is to give out the path which costs minimum seconds for Ignatius to reach target position. You may assume that the start position and the target position will never be a trap, and there will never be a monster at the start position.

Input The input contains several test cases. Each test case starts with a line contains two numbers N and M(2<=N<=100,2<=M<=100) which indicate the size of the labyrinth. Then a N*M two-dimensional array follows, which describe the whole labyrinth. The input is terminated by the end of file. More details in the Sample Input.

Output For each test case, you should output “God please help our poor hero.” if Ignatius can’t reach the target position, or you should output “It takes n seconds to reach the target position, let me show you the way.”(n is the minimum seconds), and tell our hero the whole path. Output a line contains “FINISH” after each test case. If there are more than one path, any one is OK in this problem. More details in the Sample Output.

Sample Input 5 6 .XX.1. ..X.2. 2…X. …XX. XXXXX. 5 6 .XX.1. ..X.2. 2…X. …XX. XXXXX1 5 6 .XX… ..XX1. 2…X. …XX. XXXXX. Sample Output It takes 13 seconds to reach the target position, let me show you the way. 1s:(0,0)->(1,0) 2s:(1,0)->(1,1) 3s:(1,1)->(2,1) 4s:(2,1)->(2,2) 5s:(2,2)->(2,3) 6s:(2,3)->(1,3) 7s:(1,3)->(1,4) 8s:FIGHT AT (1,4) 9s:FIGHT AT (1,4) 10s:(1,4)->(1,5) 11s:(1,5)->(2,5) 12s:(2,5)->(3,5) 13s:(3,5)->(4,5) FINISH It takes 14 seconds to reach the target position, let me show you the way. 1s:(0,0)->(1,0) 2s:(1,0)->(1,1) 3s:(1,1)->(2,1) 4s:(2,1)->(2,2) 5s:(2,2)->(2,3) 6s:(2,3)->(1,3) 7s:(1,3)->(1,4) 8s:FIGHT AT (1,4) 9s:FIGHT AT (1,4) 10s:(1,4)->(1,5) 11s:(1,5)->(2,5) 12s:(2,5)->(3,5) 13s:(3,5)->(4,5) 14s:FIGHT AT (4,5) FINISH God please help our poor hero. FINISH

代碼:

#include <iostream>#include <string>#include <cstring>#include <cstdio>#include <cmath>#include <cstdlib>#include <algorithm>#include <queue>#include <map>#define MST(s,q) memset(s,q,sizeof(s))#define INF 0x3f3f3f3f#define MAXN 1005using namespace std;struct node{ int x, y; int time;} pre[105][105];bool Operator <(const node& t1, const node& t2){ return t1.time > t2.time;}int N, M;char Map[105][105];bool vis[105][105];int move_x[4] = {0, 0, 1, -1}, move_y[4] = {1, -1, 0, 0};int bfs(){ priority_queue<node> Q; node Node, q; Node.x = 0, Node.y = 0, Node.time = 0; Q.push(Node); vis[0][0] = 1; pre[0][0].time = 0; while (!Q.empty()) { q = Q.top(); Q.pop(); for (int i = 0; i < 4; i++) { int x = q.x + move_x[i], y = q.y + move_y[i]; if (x >= 0 && x < N && y >= 0 && y < M && !vis[x][y] && Map[x][y] != 'X') { Node.x = x, Node.y = y; if (Map[x][y] == '.') Node.time = q.time + 1; else Node.time = q.time + Map[x][y] - '0' + 1; pre[x][y] .x = q.x, pre[x][y].y = q.y, pre[x][y].time = Node.time; if (x == N - 1 && y == M - 1) return Node.time; vis[x][y] = 1; Q.push(Node); } } } return 0;}void dfs(int time, int x, int y) // 輸出路徑{ if (x == 0 && y == 0) return; int x0 = pre[x][y].x, y0 = pre[x][y].y; int time0 = pre[x0][y0].time; dfs(time0, x0, y0); if (time == time0 + 1) { printf("%ds:(%d,%d)->(%d,%d)/n", time, x0, y0, x, y ); } else { printf("%ds:(%d,%d)->(%d,%d)/n", time0 + 1, x0, y0, x, y ); for (int i = time0 + 2; i <= time; i++) printf("%ds:FIGHT AT (%d,%d)/n", i, x, y ); }}int main(){ while (cin >> N >> M) { getchar(); for (int i = 0; i < N; i++) scanf("%s", Map[i]); MST(pre, -1); MST(vis, 0); int ans = bfs(); if (ans) { printf("It takes %d seconds to reach the target position, let me show you the way./n", ans); dfs(ans, N - 1, M - 1); printf("FINISH/n"); } else { printf("God please help our poor hero./nFINISH/n"); } }}
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院
gogogo影视剧免费观看在线观看| 国产剧情在线一区| 国产永久av在线| 超碰97在线免费观看| 一个人看的www免费观看视频| 国产三级在线播放| 在线中文字幕第一页| 在线观看中文字幕的网站| 精品推荐蜜桃传媒| 在线观看wwww| 在线观看视频污| 天天激情综合| 中文字幕视频免费在线观看| 六月天色婷婷| 国产精品亚洲第五区在线| 天天操天天射天天色| 99热播在线观看| 青草av在线| 国产精品剧情一区二区三区| av丝袜在线| 国产亚洲精品久久久久久移动网络| 国产精品你懂的在线观看| 亚洲夜夜综合| 国产鲁鲁视频在线观看特色| 一本大道香蕉久久| 国产乱子伦三级在线播放| 国产精品入口麻豆免费观看| 色中文字幕在线| 国产色在线 com| 青青草在线免费观看| 国产视频二区三区| 免费99热在线观看| 国产啊啊啊视频在线观看| 免费看黄视频网站| 99热国产在线| 国产一二三区在线视频| 免费a级在线播放| gogogogo高清视频在线| 国产午夜三区视频在线| 久草电影在线| 国产精品剧情一区二区三区| 久热精品免费视频| 亚洲国产日韩在线人成电影| 国产激情网址| 国产精品一区二区三区视频网站| www久久日com| 91最新在线| 精品国产高清a毛片无毒不卡 | 性色视频在线| 国产偷倩在线播放| 免费高清av| 免费不卡中文字幕视频| 日韩国产成人| www.五月色.com| 久久精品最新免费国产成人| 国产国产人免费人成免费视频| 91av久久| 国产一级大片| 日本中文字幕在线播放| 五月综合激情在线| 午夜视频免费在线观看| 91caoporn在线| 国产精品剧情一区二区三区| 国产精品视频一区二区图片| 中文字幕在线视频免费观看| 国产精品视频一区麻豆| 国产黄色av免费看| 日本成a人片在线观看| 欧美a免费在线| 国产一二在线观看| 伊人春色在线| www.狠狠操.com| 国产黄在线看| 欧美色第一页| 国产日韩欧美精品一区二区三区| 91三级在线| 国产主播福利在线| 一区二区三区免费视频网站| 开心丁香婷婷深爱五月| √天堂中文在线| av中文在线| 国产黄色在线播放| www.三级.com| 精品极品三级久久久久| 免费99热在线观看| 亚洲最新永久观看在线| 国产亚洲精品拍拍拍拍拍| 亚洲精品乱码电影在线观看| 国产精品免费91| xxx国产精品| 99在线播放| 国产91在线视频蝌蚪| 中文字幕一区免费| 麻豆精品不卡国产免费看| 国产黄色高清在线| 国产午夜在线视频| 大香伊人久久| 国产尤物视频在线| 尤物免费看在线视频| 国产永久免费| 国产在线视精品麻豆| 久草国产视频| 中文字幕在线观看播放| 99热在线观看免费| 最新黄网在线观看| 国产一级粉嫩xxxx| 中文字幕麻豆| 国产精品乱码一区二区三区视频| 九九视频九九热| av激情在线| 日本一二区视频| 九九在线观看免费视频| 成在线人视频免费视频| 最新中文字幕在线视频| 国产激情视频一区二区| 国产福利在线看| 夜色资源网av在先锋网站观看| 四虎一区二区三区| 久久精品无码一区二区日韩av| 九九热视频在线| 五月亚洲综合| 99久久99热久久精品免费看| 亚洲天堂久久久| 美女av在线播放| 国产美女视频网站| 国产高清免费视频| 青青草原国产在线观看| 国产女人在线观看| 在线国产91| 国产一起色一起爱| 欧美日韩不卡中文字幕在线| 国产69精品久久app免费版| 国产成人天天5g影院| www.狠狠插| 精品无人乱码| 国产精品亚洲第五区在线| 伊人中文字幕在线| 中文字幕av中文字幕| 四虎中文字幕| 国产精选在线观看| 在线亚洲不卡| 国产一级粉嫩xxxx| 免费精品国产自产拍观看| 国产成人精品18| 国内外激情在线| 亚洲精品在线视频免费| 中文字幕在线视频不卡| 就爱干草视频| 亚洲大香人伊一本线| 国产精品黄页网站在线播放免费 | 在线三级中文| 免费在线黄色av| 7777在线| 国产高清一区二区三区视频| 国产免费黄网站| 免费日本黄色| 波多野结衣久久高清免费| aaa大片在线观看| 国产高清免费在线播放| 国产尤物视频| 国产精品㊣新片速递bt| 老司机精品视频一区二区| 在线三级av| 香蕉视频免费在线播放| 在线亚洲电影| 亚洲综合在线网| 精品极品三级久久久久| 国产精品视频一区二区久久| 国产在线看片| 尤物视频在线观看| 国产视频你懂的| 国产成人午夜| 亚洲成人av高清| 开心丁香婷婷深爱五月| 国产在线超碰| 国产国产国产国产国产国产| 精品国产免费观看一区| 亚洲一道本在线| 欧美午夜电影一区二区三区| 老司机在线视频二区| 好吊日视频在线观看| 国产鲁鲁视频在线观看特色| 中文字幕色视频| 在线三级中文| 超碰在线97国产| 国产日本韩国在线播放| 精品国产高清自在线一区二区三区 | 国产福利热线视频| 国产h色视频在线观看| 精品国产高清自在线一区二区三区 | 国产高清免费在线播放| av在线1区2区| 九九精品九九| 国产调教视频在线观看| 99re热视频在线| 国内外激情在线| 精品视频一二三| 久久久久久久久久久久久91| 天堂资源最新在线| 精品国产免费观看一区|