啊哈!演算法 列舉之炸彈人

2021-07-11 13:25:24 字數 649 閱讀 4393

炸彈人:

現有關卡:遊戲者只有一枚炸彈,且炸彈可以殺死殺傷範圍內所有敵人。請問炸彈放在哪個位置,可以消滅最多的敵人。

思路:首先將地圖模型化。牆用#表示;敵人用g表示;空地用.表示。炸彈只能放在空地上。

如:13行13列

#############

#gg.ggg#ggg.#

###.#g#g#g#g#

#.......#..g#

#g#.###.#g#g#

#gg.ggg.#.gg#

#g#.#g#.#.###

##g...g.....#

#g#.#g###.#g#

#...g#ggg.gg#

#g#.#g#g#.#g#

#gg.ggg#g.gg#

#############

用乙個二維陣列儲存,乙個個嘗試各點。炸彈**沿上下左右四個方向,因此進行列舉時,需要沿著上下左右四個方向統計可以消滅的敵人的所有的數目。

如:向下統計:y不變,x每次加1,直到遇到牆為止。

將上下左右四個方向的敵人數相加求和,最終輸出消滅敵人數最多的那個空地座標即可。

#include using namespace std;

int main()}}

}cout<<"將炸彈放置在("<

炸彈人 模擬,列舉

題目描述 id 12033 炸彈人標籤 模擬詳情 小哼最近愛上了 炸彈人 遊戲。你還記得在小霸王遊戲機上的炸彈人嗎?用放置炸彈的方法來消滅敵人。需將畫面上的敵人全部消滅後,並找到隱藏在牆裡的暗門才能過關。現在有乙個特殊的關卡如下。你只有一枚炸彈,但是這枚炸彈威力超強 殺傷距離超長,可以消滅殺傷範圍內...

炸彈人遊戲 暴力列舉

先來說說題目意思吧,如圖,幫助小人找到乙個放炸彈的座標,使之一顆炸彈炸死最多的敵人。我們用字元g表示敵人,表示牆,表示可以走的路,特別說明下,那種一推就倒的牆,就把它看做路吧。bfs includeusing namespace std struct note struct note que 401...

啊哈演算法搜尋應用之再解炸彈人 DFS與BFS

廣搜 include include include struct node struct node queue 20 佇列實現bfs int head 0 int tail 0 char map 21 21 存圖 int book 21 21 標記走過的點 int n 圖的規模 int max 1...