BFS:中国象棋中的跳马问题

该博客探讨如何使用宽度优先搜索(BFS)解决中国象棋中马的移动问题,考虑到马的‘日’字形路径并处理障碍物的影响。通过输入测试实例,演示如何找到从起点到终点的最短步数,并提供了一种解决方案的代码实现。
摘要由CSDN通过智能技术生成

问题描述是这样的:

有一张p*q的棋盘,并且棋盘中有障碍物(用来限制马的行动,即中国象棋中的蹩马腿)。有一个棋子马(走“日”字形路线),要从起始点走到终点。


输入部分:

第一行输入一个整数n,表示有n组测试实例,每组测试数据第一行输入两个整数p和q,表示棋盘的大小(1<=p,q<=100),每组测试数据第二行输入4个整数x1,y1,x2,y2,表示马的起点和终点的坐标。第三行输入一个整数m,表示图中有多少障碍物,接着m行每行一个坐标,分别表示m个障碍物的位置坐标。


输出部分:

输出马从起始位置走到终点所需的最小步数。若马不能走到终点,输出“ can not reach!”

样例输入:

2
9 10
1 1 2 3
0
9 10
1 1 2 3
8
1 2
2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值