藍橋杯2019初賽 迷宮

2021-10-18 22:42:04 字數 943 閱讀 5488

迷宮

下圖給出了乙個迷宮的平面圖,其中標記為1 的為障礙,標記為0 的為可

以通行的地方。

010000

000100

001001

110000

迷宮的入口為左上角,出口為右下角,在迷宮中,只能從乙個位置走到這

個它的上、下、左、右四個方向之一。

對於上面的迷宮,從入口開始,可以按drrurrdddr 的順序通過迷宮,

一共10 步。其中d、u、l、r 分別表示向下、向上、向左、向右走。

對於下面這個更複雜的迷宮(30 行50 列),請找出一種通過迷宮的方式,

其使用的步數最少,在步數最少的前提下,請找出字典序最小的乙個作為答案。

請注意在字典序中d思路:dfs的路徑保留我會,但是bfs的路徑保留我忘記了,就很抽象,這個題用dfs做的話和八皇后有點像,每次到達每次判斷每次覆蓋,私以為會很累,然後我就用bfs做了,就當是複習路徑列印了,在bfs中只要每次用當前的節點當成前驅,然後for迴圈中的節點當成後繼,不斷在節點中迭代路徑,那麼第乙個到達的的節點所包含的路徑必然是最小路徑,然後就完事兒了。

#include

using

namespace std;

struct node

;bool vis[35]

[55];

char st[35]

[55];

int dx=

;int dy=

;char str=

;int n=

30,m=50;

queueq;

void

bfs(

)for

(int i=

0;i<

4;i++)}

}}intmain()

}bfs()

;return0;

}

藍橋杯2019初賽 試題D 迷宮

嗚嗚嗚 這題做了我好久好久,一開始拿dfs寫了半天,寫是寫出來了,但是實在是太大了,笑死,根本搜不出來,後來又在網上看各種各樣的題解,總算給我給搞出來了,因為bfs本身沒有dfs掌握的牢固,所以有些不太敢拿bfs寫,晚上要把bfs的基本功加強一下,加油加油!include include using...

藍橋杯2017初賽 迷宮

請你計算一下,最後,有多少玩家會走出迷宮?而不是在裡邊兜圈子。答 很簡單的題吧算是,今天開始每日還就那個一更,話說這x星人確實也太懶了點吧?include include using namespace std char x 10 10 int visit 10 10 如果這個村民一直不出來他肯定會...

藍橋杯2019初賽 A組

修改陣列題目描述 給定乙個長度為n 的陣列a a1,a2,an 陣列中有可能有重複出現的整數。現在小明要按以下方法將其修改為沒有重複整數的陣列。小明會依次修改a2,a3,an。當修改ai 時,小明會檢查ai 是否在a1 ai 1 現過。如果出現過,則小明會給ai 加上1 如果新的ai 仍在之前出現過...