第4章第4节-再解炸弹人-广度优先搜索

本文通过一个示例介绍了如何运用广度优先搜索(BFS)算法来解决炸弹人游戏中的最优投弹位置问题,以消灭最多的敌人。代码展示了一个简单的C语言实现,遍历地图并计算每个位置可消灭的敌人数量。
摘要由CSDN通过智能技术生成

/*广度优先搜索解炸弹人*/
/*#表示墙、G表示敌人、.表示空地
问炸弹放在那个位置才可以消灭最多的敌人
示例输入:
    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个敌人
*/
#include "stdio.h"
struct note
{
    int x;//横坐标
    int y;//纵坐标
};

char a[20][21];//用来存储地图

int getnum(int i,int j)
{
    int sum,x,y;
    sum = 0;//sum用来计数(可以消灭的敌人数),所以需要初始化为0
    //将坐标i,j复制到两个新变量x,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员Realeo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值