搜尋 難纏的值周生

2021-06-05 14:31:43 字數 1601 閱讀 4581

難纏的值周生

【問題描述】

小 p 上學總是遲到,遲到了以後常常會被值周生發現。被值周生發現就會給

他所在的班級扣分,被扣了分不免要挨班主任的訓,這令小 p 很不爽。不過,聰

明的他經過觀察發現,值周生通常會站在固定的位置,並且他們都很笨,只會向

固定的同乙個方向看。於是小 p 經過潛心研究,把值周生的站位和方向以及學校

的地形繪成一張地圖,你的任務是編寫乙個程式,幫助小 p 找出一條路從大門到

達教室並且不被值周生發現。

【輸入檔案】

輸入檔案的第一行是兩個整數 n,g,代表學校是乙個n × n的正方形,其

中有 g 個值周生。

接下來輸入乙個 n  ×  n 的矩陣,代表學校。其中.代表空地,x(大寫英文本

母)代表牆,e 代表學校的大門,小 p 將從這裡進入學校,c 代表教室,小 p 到

達這裡就勝利了。數字代表值周生,數字的值代表值周生的編號,顯然值周生不

能穿牆透視,但是小 p 也不能翻牆或者站到牆上去。

接下來有 g 行,每行包含乙個數字gi 和乙個字母,代表第 gi 個值周生的朝

向。其中 n 表示北,s 表示南,e 表示東,w 表示西。顯然,如果你撞上值周

生(走到值周生所在的格仔上),也會被值周生發現。

【輸出檔案】

輸出檔案包含任意乙個行走方案,每行乙個字母,表示小p 每步走的方向。

如果無論小p 怎麼走都不能不被值周生發現的走到教室,則輸出一行整數-1。

【樣例輸入】

5 3

..e.1

...xx

.2.x.

.c.x.

...x3

1 e

2 e

3 w

對,沒有錯,這是冬令營的題。。

有的同學因為想多了,或者想少了而悲劇。

我一開始差點忘了無答案輸出-1。。

事實證明測試資料全是-1。

值周 校門外的樹

這題因為資料規劃只有1e5 和 100,所以直接暴力遍歷就可以解決.暴力方法 using namespace std include int tree 10005 intmain int sum 0 for int i 0 i l i cout return0 差分方法 在這道題中,由於資料規模已經...

二叉搜尋樹的搜尋和最值情況

二叉搜尋樹是一種排序樹,其左子樹的值 根節點 右子樹,根據此公式,可以很方便的得出二叉樹搜尋樹的最值,其 如下 typedef struct binode binode,bitree void treeminimum bitree t 是對指標的引用,為根節點 void treemaxmum bit...

樹 15 二叉搜尋樹中搜尋給定的值

700.二叉搜尋樹中的搜尋 難度簡單93 給定二叉搜尋樹 bst 的根節點和乙個值。你需要在bst中找到節點值等於給定值的節點。返回以該節點為根的子樹。如果節點不存在,則返回 null。例如,給定二叉搜尋樹 4 2 7 1 3 和值 2你應該返回如下子樹 2 1 3在上述示例中,如果要找的值是5,但...