【洛谷 P1443】马的遍历 题解(广度优先搜索)
创始人
2024-05-30 22:15:53
0

马的遍历

题目描述

有一个 n×mn \times mn×m 的棋盘,在某个点 (x,y)(x, y)(x,y) 上有一个马,要求你计算出马到达棋盘上任意一个点最少要走几步。

输入格式

输入只有一行四个整数,分别为 n,m,x,yn, m, x, yn,m,x,y。

输出格式

一个 n×mn \times mn×m 的矩阵,代表马到达某个点最少要走几步(不能到达则输出 −1-1−1)。

样例 #1

样例输入 #1

3 3 1 1

样例输出 #1

0    3    2    
3    -1   1    
2    1    4

提示

数据规模与约定

对于全部的测试点,保证 1≤x≤n≤4001 \leq x \leq n \leq 4001≤x≤n≤400,1≤y≤m≤4001 \leq y \leq m \leq 4001≤y≤m≤400。

思路

  1. 马走“日”
  2. 输出格式:域宽为5,左对齐
  3. 注意判断是否越界

AC代码

#include 
#include 
#include 
#define AUTHOR "HEX9CF"
using namespace std;const int maxn = 405;
const int sun[8][2] = {-2, 1, -2, -1, -1, 2, -1, -2, 2, 1, 2, -1, 1, 2, 1, -2};
int n, m, x, y;bool vis[maxn][maxn];
int stp[maxn][maxn];
queue> q;void bfs(int x, int y)
{vis[x][y] = 1;stp[x][y] = 0;q.push(make_pair(x, y));while (!q.empty()){pair f = q.front();q.pop();for (int i = 0; i < 8; i++){int xx = f.first + sun[i][0];int yy = f.second + sun[i][1];if (xx > 0 && xx <= n && yy > 0 && yy <= m && !vis[xx][yy]){vis[xx][yy] = 1;q.push(make_pair(xx, yy));stp[xx][yy] = stp[f.first][f.second] + 1;}}}
}int main()
{memset(vis, 0, sizeof(vis));memset(stp, -1, sizeof(stp));cin >> n >> m >> x >> y;stp[x][y] = 0;vis[x][y] = true;q.push(make_pair(x, y));bfs(x, y);for (int i = 1; i <= n; i++){for (int j = 1; j <= m; j++){printf("%-5d", stp[i][j]);}putchar('\n');}return 0;
}

相关内容

热门资讯

三门峡市2025年度市直机关公... 转自:三门峡发布三门峡市2025年度市直机关公开遴选拟任职人员公示公告根据2025年度三门峡市市直机...
进一步加强环境资源审判裁判规则...   为进一步加强环境资源审判裁判规则指引,最高人民法院近日公开发布第46批共5件生态环境保护专题指导...
纪念爱因斯坦广义相对论公开首讲... 来源:新华社 新华社柏林6月15日电(记者黄燕)当地时间14日下午至15日凌晨,柏林天文馆基金会在位...
“微专业”“小而精” 探索人才... 转自:中国发展网中国发展改革报社记者 | 荆文娜过去,人们常会问刚考上大学的学生,“学的什么专业?”...
行业大咖共议电影未来:需要重新... 上证报中国证券网讯(记者杨翔菲王彭)在短视频冲击、观众口味升级、行业成本攀升的多重挑战下,中国电影产...
国家统计局分析5月份国内消费市... 转自:北京日报客户端6月16日上午,国新办举行新闻发布会,介绍2025年5月份国民经济运行情况。记者...
最高检去年核准追诉低龄未成年人... 界面新闻记者 | 翟瑞民2025年6月16日,最高人民检察院发布《未成年人检察工作白皮书(2024)...
武威:构建全方位水安全网   西北角·中国甘肃网记者 张振国  为全面提升水环境自动监测能力,确保国家地表水水质自动站稳定高效...
最新:伊朗对以色列发动第八轮导... 据伊朗塔斯尼姆通讯社16日报道,伊朗当天凌晨对以色列发动了新一轮导弹袭击。这是伊朗伊斯兰革命卫队“真...
东软集团等成立数智康养产业新公... 人民财讯6月16日电,企查查APP显示,近日,大连数智康养产业有限公司成立,法定代表人为王星辉,经营...
国家统计局付凌晖:推动城市更新... 观点网讯:6月16日,国家统计局新闻发言人付凌晖在国新办新闻发布会上表示,下阶段将推动城市更新和危旧...
【女装】行业市场规模:2024... 转自:前瞻产业研究院行业主要上市公司:江南布衣(3306.HK)、歌力思(603808)、太平鸟(6...
2025年廊坊经洽会丨展商、好... 转自:廊坊发布编辑:董昕
正明生物:广州化妆品代加工的领... 在广州化妆品代加工这片竞争激烈的商业蓝海中,佛山正明生物科技有限公司宛如一艘稳健前行的巨轮,凭借卓越...
国家统计局:我国外贸发展综合优... 人民财讯6月16日电,国家统计局新闻发言人、国民经济综合统计司司长付凌晖在国新办新闻发布会上表示,5...
创新药BD交易再迎新进展,科创... 截至2025年6月16日 11:13,上证科创板生物医药指数下跌0.83%。成分股方面涨跌互现,悦康...
热闻|雷军“官宣”!小米YU7... 转自:大众报业·齐鲁壹点6月16日信息,雷军在微博发文表示,小米YU7将于6月底发布。还有很多重磅新...
伊朗对以色列发动第八轮导弹袭击 新华社德黑兰6月16日电(记者陈霄 沙达提)据伊朗塔斯尼姆通讯社16日报道,伊朗当天凌晨对以色列发动...
邦泽创科IPO:员工专科及以下... Hehson财经上市公司研究院|财报鹰眼预警广东邦泽创科电器股份有限公司(以下简称“邦泽创科”)拟计...
华康洁净:董秘回应股价不涨及市... 投资者提问:作为该股的股东,想了解下公司股价近来一直不涨的原因,所属板块已经涨了近20%了,但该股一...