小明系列故事 捉迷藏

2021-08-17 15:20:42 字數 568 閱讀 8795

題目鏈結

剛開始的思路是直接整,把能看見的大明,二明的地方全部標記出來

但是交叉的地方又不好標記

而且如何判定既看到大明,又看到二明

直到看到了大神**

每走一步,判斷一下有沒有看見大明或者二明

如果看到大明返回1,看見二明返回2,兩個都看見返回3,乙個沒看見返回0

用s代表當前看到幾個人

每次向下搜尋,如果該點看到的人數與當前記錄的看到的人數不一樣,那麼,用該點看到的人數+當前記錄的看到的人數(這裡重點)

這樣就可以記錄每個點看到多少人

注意:每個點看到的人的值不超過3,但是上面情況可能會超過3,如果大於3,那麼就說明2個人都看到了,把值變為3

還有乙個最主要的問題!!!!!!!

一般的搜尋不會往回走!比如搜尋的時候,如果走到  1 1 ,然後走到 1 2 ,那麼就不會再走到1 1 了,不會有這條路線

但是這裡有可能這樣走!

那麼問題來了!如何讓他能往回走,而且不會進入無限的迴圈搜尋

開乙個三維陣列存圖,對於每乙個位置,有三種狀態,1.找到大明,2.找到二明,3.倆都找到

**參考處

小明系列故事 捉迷藏(BFS)

小明的媽媽生了三個孩子,老大叫大明,老二叫二明,老三.老三自然就叫小明了。一天,小明的媽媽帶小明兄弟三人去公園玩耍,公園裡面樹木很多,有很多地方可以藏身,於是他們決定玩捉迷藏。經過幾輪的猜拳後,第一輪是小明來找其他兩個人,遊戲規則很簡單 只要小明可以在規定的時間內找到他們就算小明獲勝,並且被發現的兩...

HDU 4528 小明系列故事 捉迷藏

小明的媽媽生了三個孩子,老大叫大明,老二叫二明,老三.老三自然就叫小明了。一天,小明的媽媽帶小明兄弟三人去公園玩耍,公園裡面樹木很多,有很多地方可以藏身,於是他們決定玩捉迷藏。經過幾輪的猜拳後,第一輪是小明來找其他兩個人,遊戲規則很簡單 只要小明可以在規定的時間內找到他們就算小明獲勝,並且被發現的兩...

hdu 4528小明系列故事 捉迷藏 (bfs)

題意 就是三個傻明玩捉迷藏,小明負責找大的和二的,直線可以看見就算找到,人擋著人都不行!問小明可不可以在規定時間完成任務。思路 就是正常的bfs,只不過有些細節處理需要注意,比如能否看到大明二明,保證兩點中間都是 還有就是去重,這裡需要注意,小明是可以走回頭路的,比如大明在左上,二明在右上,小明就要...