acwing算法提高之搜索--多源BFS与双端队列BFS

目录

  • 1 专题说明
  • 2 训练

1 专题说明

本专题用来计算使用多源BFS和双端队列BFS求解的题目。

2 训练

题目1:173矩阵距离

C++代码如下,

#include <iostream>
#include <queue>
#include <cstring>using namespace std;const int N = 1010;
int g[N][N];
int d[N][N];
int n, m;int main() {queue<pair<int,int>> q;memset(d, -1, sizeof d);cin >> n >> m;for (int i = 1; i <= n; ++i) {for (int j = 1; j <= m; ++j) {char c;cin >> c;g[i][j] = c - '0';if (g[i][j]) {q.push(make_pair(i,j));d[i][j] = 0;}}}int dirs[4][2] = {{-1,0}, {1,0}, {0,-1}, {0,1}};while (!q.empty()) {auto t = q.front();q.pop();//t下一步可以走到哪里for (int k = 0; k < 4; ++k) {int x = t.first + dirs[k][0];int y = t.second + dirs[k][1];if (x < 1 || x > n || y < 1 || y > m) continue;if (d[x][y] != -1) continue; q.push(make_pair(x,y));d[x][y] = d[t.first][t.second] + 1;}}for (int i = 1; i <= n; ++i) {for (int j = 1; j <= m; ++j) {cout << d[i][j] << " ";}cout << endl;}return 0;
}

题目2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/704829.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【USENIX论文阅读】Day2

Birds of a Feather Flock Together: How Set Bias Helps to Deanonymize You via Revealed Intersection Sizes&#xff08;"物以类聚&#xff1a;集合偏差如何帮助去匿名化——通过揭示交集大小&#xff09; Xiaojie Guo, Ye Han, Zheli Liu, Ding Wang, Yan Jia, Jin L…

thinkphp6定时任务

这里主要是教没有用过定时任务没有头绪的朋友, 定时任务可以处理一些定时备份数据库等一系列操作, 具体根据自己的业务逻辑进行更改 直接上代码 首先, 是先在 tp 中的 command 方法中声明, 如果没有就自己新建一个, 代码如下 然后就是写你的业务逻辑 执行定时任务 方法写好了…

速盾网络:CDN原理是什么意思啊

CDN&#xff08;内容分发网络&#xff09;是一种网络架构&#xff0c;旨在提高网站的性能、可用性和安全性。它通过在全球范围内部署服务器节点&#xff0c;并将内容存储在这些节点上&#xff0c;以缓解服务器负载、减少用户访问延迟&#xff0c;从而改善用户体验。那么&#x…

ConvNeXt V2:用MAE训练CNN

论文名称&#xff1a;ConvNeXt V2: Co-designing and Scaling ConvNets with Masked Autoencoders 发表时间&#xff1a;CVPR2023 code链接&#xff1a;代码 作者及组织: Sanghyun Woo&#xff0c;Shoubhik Debnath来自KAIST和Meta AI。 前言 ConvNextV2是借助MAE的思想来训练…

cv2.warpAffine和F.grid_sample转换关系

个人笔记&#xff1a; Notion – The all-in-one workspace for your notes, tasks, wikis, and databases.

【Kubernetes】部署安装 K8s 为什么要关闭 swap 分区?

目录 swap部署安装 K8s 为什么要关闭 swap 分区&#xff1f; swap 关于什么是swap以及swap有什么用&#xff0c;可以看看这篇文章&#xff1a;Linux 的交换空间&#xff08;swap&#xff09;是什么&#xff1f;有什么用&#xff1f; 部署安装 K8s 为什么要关闭 swap 分区&…

【学习笔记】WOS导出Endnote参考文献步骤

从 Web of Science 导出文献到 EndNote 的基本步骤如下&#xff1a; 访问 Web of Science 数据库&#xff1a; 通过所属学术机构的图书馆网站访问 Web of Science&#xff0c;大多数情况下需要校园网络或VPN。 进行文献检索&#xff1a; 在 Web of Science 中进行关键词搜索&am…

【PyTorch][chapter 18][李宏毅深度学习]【无监督学习][ VAE]

前言: VAE——Variational Auto-Encoder&#xff0c;变分自编码器&#xff0c;是由 Kingma 等人于 2014 年提出的基于变分贝叶斯&#xff08;Variational Bayes&#xff0c;VB&#xff09;推断的生成式网络结构。与传统的自编码器通过数值的方式描述潜在空间不同&#xff0c;它…

排序(9.17)

1.排序的概念及其运用 1.1排序的概念 排序 &#xff1a;所谓排序&#xff0c;就是使一串记录&#xff0c;按照其中的某个或某些关键字的大小&#xff0c;递增或递减的排列起来的操作。 稳定性 &#xff1a;假定在待排序的记录序列中&#xff0c;存在多个具有相同的关键字的记…

实战 vue3 使用百度编辑器ueditor

前言 在开发项目由于需求vue自带对编辑器不能满足使用&#xff0c;所以改为百度编辑器&#xff0c;但是在网上搜索发现都讲得非常乱&#xff0c;所以写一篇使用流程的文章 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 一、下载ueditor编辑器 一个“…

三数之和(哈希,双指针)

15. 三数之和 - 力扣&#xff08;LeetCode&#xff09; 方法1&#xff1a;哈希算法&#xff08;不推荐&#xff09; 缺点&#xff1a;时间复杂度O&#xff08;N^2&#xff09;&#xff0c;去重情况复杂 class Solution { public:vector<vector<int>> threeSum(ve…

【Java EE初阶二十五】简单的表白墙(一)

1. 前端部分 1.1 前端代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"wid…

2步破解官方sublime4

sublime简要破解流程 1.下载sublime官方最新版2. 破解流程 1.下载sublime官方最新版 打开 官方网站下载 portable version 版&#xff0c;省的安装。。解压到任意位置&#xff0c;备份 sublime_text.exe 文件 2. 破解流程 打开网址把文件 sublime_text.exe 拖入网页搜索替换…

TensorRT及CUDA自学笔记004 内核函数以及两个简单的内核函数demo

TensorRT及CUDA自学笔记004 内核函数以及两个简单的内核函数demo 内核函数是能够在GPU上被线程并发执行的函数 CUDA程序中的函数修饰符 修饰符执行位置调用注意global在设备&#xff08;device&#xff09;上执行主机和compute capabilitiy 3&#xff08;计算能力三级&#…

【非递归版】归并排序算法(2)

目录 MergeSortNonR归并排序 非递归&归并排序VS快速排序 整体思想 图解分析​ 代码实现 时间复杂度 归并排序在硬盘上的应用&#xff08;外排序&#xff09; MergeSortNonR归并排序 前面的快速排序的非递归实现&#xff0c;我们借助栈实现。这里我们能否也借助栈去…

国产服务器操作系统

为何记录 最近的开发工作经常接触到国产服务器操作系统的业务&#xff0c;经常被x86、arm、龙芯、鲲鹏、欧拉...搞得一脸懵逼&#xff0c;遂记之&#xff01; 操作系统 这里按照应用场景分&#xff1a; 桌面操作系统&#xff1a;主要用于pc&#xff0c;如Windows、macOS、Li…

MATLAB练习题:电子管的更换策略问题

​讲解视频&#xff1a;可以在bilibili搜索《MATLAB教程新手入门篇——数学建模清风主讲》。​ MATLAB教程新手入门篇&#xff08;数学建模清风主讲&#xff0c;适合零基础同学观看&#xff09;_哔哩哔哩_bilibili 在一台设备上&#xff0c;安装有四只型号和规格完全相同的电子…

腾讯design vue项目 上传桶 腾讯云的桶 对象存储 打包web端项目上传dist

1.说明 将腾讯design 项目上传到 腾讯云的对象存储中 &#xff0c;但是发现 再这个腾讯design项目中 直接npm run build 打包以后 上传 发现 不能用 需要配置东西 2.解决 使用腾讯云的cos-nodejs-sdk-v5 插件 代码上传 cos-nodejs-sdk-v5 - npm npm i cos-nodejs-sdk-v5 …

[算法沉淀记录]排序算法 —— 快速排序

排序算法 —— 快速排序介绍 基本概念 快速排序&#xff08;Quicksort&#xff09;是一种排序算法&#xff0c;最早由东尼霍尔提出。在平均状况下&#xff0c;排序 n 个项目要 Ο(n log n) 次比较。在最坏状况下则需要 Ο(n2) 次比较&#xff0c;但这种状况并不常见。事实上&…

《论文阅读》一个基于情感原因的在线共情聊天机器人 SIGIR 2021

《论文阅读》一个基于情感原因的在线共情聊天机器人 前言简介数据集构建模型架构损失函数实验结果咨询策略总结前言 亲身阅读感受分享,细节画图解释,再也不用担心看不懂论文啦~ 无抄袭,无复制,纯手工敲击键盘~ 今天为大家带来的是《Towards an Online Empathetic Chatbot…