1.问题描述
我们都直到小霸王游戏中的炸弹人。现在有一个特殊的关卡如下:只有一个炸弹,请问在哪里放置这个炸弹才可以消灭最多的敌人?
我们先把这个地图模型化,用”#“表示墙,这种墙是不可以被炸掉的。敌人用“G“表示,用”.“表示空地:
############# #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# #############
2.算法设计
1.首先我们用一个二维数组存储这个地图,至于炸弹放置在哪一个点可以消灭最多的敌人,我们需要一个一个来尝试。
2.炸弹的爆炸方向是上下左右四个方向,因此我们在对每一个点进行枚举的时候,需要沿着上下左右四个方向分别统计可以消灭的数目。最终输出消灭最多敌人的那个点。
while(graph[x][y]!='#')//只要没有到边界 { i