廣度優先搜尋之最大殺敵數

2021-07-11 15:47:05 字數 1074 閱讀 2824

在你的位置放置乙個炸彈,放在哪點能殺最多的敵人,你的位置不能和敵人相同

輸入 13 13 3 3

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

#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#

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

輸出將炸彈放置在(7,11),最多可以消滅 10 個敵人

#includechar a[20][21];

int book[20][20],max,mx,my,n,m;

int getnum(int i,int j)

//向下 統計消滅 的敵人數

x = i; y = j;

while(a[x][y] != '#') // 判斷的點是不是牆,如果不是牆就繼續

//向左 統計消滅 的敵人數

x = i; y = j;

while(a[x][y] != '#') // 判斷的點是不是牆,如果不是牆就繼續

//向右 統計消滅 的敵人數

x = i; y = j;

while(a[x][y] != '#') // 判斷的點是不是牆,如果不是牆就繼續

return sum;

} void dfs(int x,int y)

, // 向右走

, // 向下走

, // 向左走

// 向上走

};int k,sum,tx,ty;

sum = getnum(x,y);// 計算當前這個點消滅的 敵人總數

if(sum > max)

// 列舉 四個 方向

for(k = 0; k <= 3; k++)

}return ;

} int main()

搜尋 廣度優先搜尋

廣度優先搜尋一層一層地進行遍歷,每層遍歷都是以上一層遍歷的結果作為起點,遍歷乙個距離能訪問到的所有節點。需要注意的是,遍歷過的節點不能再次被遍歷。class solution,int shortestpathbinarymatrix vectorint grid length return 1 cl...

廣度優先搜尋

include include include include using namespace std struct node 圖頂點結構定義 typedef struct node graph 圖形的結構新型態 struct node head 9 圖形頂點陣列 int visited 9 遍歷標...

廣度優先搜尋

廣度優先搜尋詳解 1.也稱寬度優先搜尋,顧名思義,就是將一棵樹一層一層往下搜。演算法首先搜尋和s距離為k的所有頂點,然後再去搜尋和s距離為k l的其他頂點。bfs是一種完備策略,即只要問題有解,它就一定可以找到解。並且,廣度優先搜尋找到的解,還一定是路徑最短的解。但是它盲目性較大,尤其是當目標節點距...