蓝桥杯备考:BFS之马的遍历

news/2025/4/1 0:25:22/

这道题我们得知道象棋里的马能怎么走,应该是按日字走的

如图,就这么走,我们按基础的bfs遍历一下标记每个格子的最短的路径就行了,没到达的格子就设置为-1

#include <iostream>
#include <queue>
#include <cstring>
using namespace std;
const int N = 410;
int n, m, x, y;
int dict[N][N];
int dx[] = { -2,-1,1,2,2,1,-1,-2 };
int dy[] = { 1,2,2,1,-1,-2,-2,-1 };
typedef pair<int, int> PII;
void bfs() {memset(dict, -1, sizeof(dict));queue<PII> q;q.push({ x,y });dict[x][y] = 0;while (q.size()){auto t = q.front();q.pop();int x = t.first;int y = t.second;for (int k = 0; k < 8; k++){int px = x + dx[k];int py = y + dy[k];if (px<1 || py<1 || px>n || py>m)continue;if (dict[px][py] != -1) continue;dict[px][py] = dict[x][y] + 1;q.push({ px,py });}}}
int main()
{cin >> n >> m >> x >> y;bfs();for (int i = 1; i <= n; i++){for (int j = 1; j <= m; j++){cout << dict[i][j] << " ";}cout << endl;}return 0;
}


http://www.ppmy.cn/news/1584018.html

相关文章

Python与文件——保存文件

1.以下关于Python二维数据的描述中,错误的是()。 A、CSV文件的每一行是一维数据,可以用列表、元组表示。 B、从CSV文件获得数据内容后,可以用replace()来去掉每行最后的换行符。 C、若一个列表变量里的元素都是字符串类型,则可以用join()合成字符串。 D、列表中保存的二维数据,…

MySQL 的 JSON 查询

MySQL 的 JSON 路径格式 MySQL 使用特定的 JSON 路径表达式语法来导航和提取 JSON 文档中的数据 基本结构 MySQL 中的 JSON 路径遵循以下通用格式 $[路径组件]路径组件详解 | 操作符 | 描述 | 示例 | | ----------- | --------- | ----------…

HarmonyOS WebSocket全场景应用开发深度解析

注&#xff1a;适用版本&#xff08;Harmony OS NEXT / 5.0 / API 12 &#xff09; 一、最终效果预览 二、基础代码结构 Entry Component struct ChatApp {State messages: Message[] [] // 所有聊天记录State inputText: string "" // 输入框内容State isCon…

【NLP 48、大语言模型的神秘力量 —— ICL:in context learning】

目录 一、ICL的优势 1.传统做法 2.ICL做法 二、ICL的发展 三、ICL成因的两种看法 1.meta learning 2.Bayesian Inference 四、ICL要点 ① 语言模型的规模 ② 提示词prompt中提供的examples数量和顺序 ③ 提示词prompt的形式&#xff08;format&#xff09; 五、fine-tune VS I…

Go语言中html/template模块详细功能介绍与示例

Go语言的 html/template 模块是专门用于生成安全 HTML 输出的模板引擎&#xff0c;支持自动转义以防止 XSS 攻击。以下是该模块的核心方法及用法示例&#xff1a; 1. 基础模板解析与渲染 template.Parse 和 template.Execute 解析模板字符串并渲染数据。 package mainimport…

小林coding-12道Spring面试题

1.说一下你对 Spring 的理解?spring的核心思想说说你的理解&#xff1f; 2.Spring IoC和AOP 介绍一下?Spring的aop介绍一下?IOC和AOP是通过什么机制来实现的?怎么理解SpringIoc&#xff1f;依赖倒置&#xff0c;依赖注入&#xff0c;控制反转分别是什么&#xff1f;依赖注…

隐匿视角:七款局域网屏幕监控软件对企业数字神经系统架构的重塑效应探究

在当今竞争激烈的商业环境中&#xff0c;企业管理者对于全面掌握公司运营状况&#xff0c;尤其是员工在工作时间的状态有着强烈需求。局域网屏幕监控技术作为一种有效的管理手段&#xff0c;能够使管理者实时洞察员工的计算机操作行为&#xff0c;从而提升管理效率&#xff0c;…

Web Services 简介

Web Services 简介 概述 Web Services 是一种网络服务技术,允许不同的应用程序通过互联网进行交互和数据交换。随着互联网的普及和发展,Web Services 已经成为企业级应用中不可或缺的一部分。本文将详细介绍 Web Services 的概念、特点、应用场景以及相关的技术架构。 什么…