時間限制: 2 秒 記憶體限制: 128 mb
提交: 167 解決: 24
題目描述
******最近刷題(打遊戲)刷多了,一覺醒來發現自己到了乙個迷宮裡,怎麼也出不去了。這時傳來了一句話,告訴******必須按順序收集完所有的寶石,才能出迷宮。所謂的順序,就是按照每塊寶石上英文本母的順序。迷宮裡面還有一些傳送門,可以傳送到任意乙個另外的傳送門的位置。(你走到乙個不是空地上的地方的時候,就一定會觸發相應事件,不可拒絕,從乙個傳送門傳送到另乙個傳送門不用再次傳送)。每走一步花費乙個單位時間,傳送門到另外乙個傳送門不需要時間。******初始就在字母為a的寶石的位置上(開局一寶石,其他全靠找)。
當******收集完所有寶石的時候就被傳送出迷宮。
******還要趕回去刷題(打遊戲),你們能告訴他最少需要多長時間才能回去嗎?如果不可能出去就輸出impossible。 輸入
多組例項,每組輸入乙個n,表示迷宮的大小為n*n (n <= 10)
下面n行每行n個字元
'.'表示空地,
'#'表示牆,不可以通過
'$'表示乙個傳送門
大寫字母表示寶石 輸出
每個例項輸出乙個數字,表示最少需要的時間,如果不能逃出迷宮,就輸出impossible。
樣例輸入
5樣例輸出a....
####.
..b..
.####
c.de.2ac
.b 2a#
#b3a$....
.$b
153impossible
2
**:
#include#include#include#include#include#includeusing namespace std;
int n,cnt_let,cnt_tra;
char map[15][15];
int dir[4][2]=;
int vis[15][15];
struct datap,news;
struct trantran[105];
void bfs(int x0,int y0)
for(int i=0;i<4;i++)
//有傳送門
if(map[x][y]=='$')
}} bfs(x0,y0);
} return 0;
}
HAUTOJ奇數最大子段和
題目描述 乙個大小為n的陣列a1到an 10 4 ai 10 4 請你找出乙個連續子段,使子段長度為奇數,且子段和最大。輸入 第一行為t 1 t 5 代表資料組數。之後每組資料,第一行為n 1 n 10 5 代表陣列長度。之後一行n個數,代表a1到an。輸出 每組資料輸出一行,表示滿足要求的子段和最...
HAUTOJ 1070 小汽車的位置
題目描述 有一輛智慧型小車,最初 時間為0 的位置為 0,0 我們想知道它最後的位置。小車以每小時10公里的速度向北移動 以北為y軸正向,以東為x軸正向 小車會受到一系列依照時間戳記排序的命令,1表示 向左轉 2表示 向右轉 3表 停止 每個命令的前面有乙個時間戳記,所以我們知道該命令是何時發出的。...
HAUTOJ 1268 小天使改名
題目描述 小天使的b站帳號被大家發現啦。於是小天使決定改名,將他原有id中的兩個不同位置的字母進行交換。小天使有可能將兩個不同位置的相同字母進行交換,雖然這樣做他的id並沒有發生變化 lsf知道小天使原來的id,他想知道某個id是否可能是小天使的新id。輸入 第一行為資料組數t t 100 每組資料...