NYOJ 迷宮尋寶(一)

2021-06-16 12:53:18 字數 956 閱讀 4445

時間限制:1000 ms  |  記憶體限制:65535 kb

難度:4

描述乙個叫acm的尋寶者找到了乙個藏寶圖,它根據藏寶圖找到了乙個迷宮,這是乙個很特別的迷宮,迷宮裡有n個編過號的門(n<=5),它們分別被編號為a,b,c,d,e.為了找到寶藏,acm必須開啟門,但是,開門之前必須在迷宮裡找到這個開啟這個門所需的所有鑰匙(每個門都至少有一把鑰匙),例如:現在a門有三把鑰匙,acm就必須找全三把鑰匙才能開啟a門。現在請你編寫乙個程式來告訴acm,他能不能順利的得到寶藏。

輸入輸入可能會有多組測試資料(不超過10組)。

每組測試資料的第一行包含了兩個整數m,n(1張云聰

#include#include#includeusing namespace std;

struct node

gate[5];

char map[25][25];

int key[5],cur[5];

bool success;

void dfs(int i, int j)

else if(map[i][j]=='g')

map[i][j] = 'x';

dfs(i-1, j);

dfs(i+1, j);

dfs(i, j-1);

dfs(i, j+1);

for(int k = 0; k < 5; ++k)}}

} }

int main()

else if(map[i][j] >= 'a' && map[i][j] <= 'e')

++key[map[i][j] - 'a'];}}

dfs(startx, starty);

if(success)

printf("yes\n");

else

printf("no\n");

}return 0;

}

NYOJ迷宮尋寶(一)

描述 乙個叫acm的尋寶者找到了乙個藏寶圖,它根據藏寶圖找到了乙個迷宮,這是乙個很特別的迷宮,迷宮裡有n個編過號的門 n 5 它們分別被編號為a,b,c,d,e.為了找到寶藏,acm必須開啟門,但是,開門之前必須在迷宮裡找到這個開啟這個門所需的所有鑰匙 每個門都至少有一把鑰匙 例如 現在a門有三把鑰...

nyoj82迷宮尋寶(一)

時間限制 1000 ms 記憶體限制 65535 kb 難度 4 描述 乙個叫acm的尋寶者找到了乙個藏寶圖,它根據藏寶圖找到了乙個迷宮,這是乙個很特別的迷宮,迷宮裡有n個編過號的門 n 5 它們分別被編號為a,b,c,d,e.為了找到寶藏,acm必須開啟門,但是,開門之前必須在迷宮裡找到這個開啟這...

迷宮尋寶(一) nyoj 82

時間限制 1000 ms 記憶體限制 65535 kb 難度 4 描述 乙個叫acm的尋寶者找到了乙個藏寶圖,它根據藏寶圖找到了乙個迷宮,這是乙個很特別的迷宮,迷宮裡有n個編過號的門 n 5 它們分別被編號為a,b,c,d,e.為了找到寶藏,acm必須開啟門,但是,開門之前必須在迷宮裡找到這個開啟這...