news 2026/4/23 9:17:51

P2216 [HAOI2007] 理想的正方形 [二维单调队列]

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
P2216 [HAOI2007] 理想的正方形 [二维单调队列]

P2216 [HAOI2007] 理想的正方形

时间限制: 1.00s 内存限制: 128.00MB

复制 Markdown

中文

退出 IDE 模式

题目描述

有一个 a×b 的整数组成的矩阵,现请你从中找出一个 n×n 的正方形区域,使得该区域所有数中的最大值和最小值的差最小。

输入格式

第一行为 3 个整数,分别表示 a,b,n 的值。

第二行至第 a+1 行每行为 b 个非负整数,表示矩阵中相应位置上的数。每行相邻两数之间用一空格分隔。

输出格式

仅一个整数,为 a×b 矩阵中所有“ n×n 正方形区域中的最大整数和最小整数的差值”的最小值。

输入输出样例

输入 #1复制运行

5 4 2 1 2 5 6 0 17 16 0 16 17 2 1 2 10 2 1 1 2 2 2

输出 #1复制运行

1

说明/提示

矩阵中的所有数都不超过 1,000,000,000。

20% 的数据 2≤a,b≤100,n≤a,n≤b,n≤10。

100% 的数据 2≤a,b≤1000,n≤a,n≤b,n≤100。

先进行一维的单调队列然后将一维的结果再次进行单调队列即可

#include <bits/stdc++.h> using namespace std; const int N=1e3+5; int a[N][N]; int cmax[N][N],cmin[N][N]; int q1[N],q2[N]; int n,m,len; int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin>>n>>m>>len; for(int i=1;i<=n;i++) for(int j=1;j<=m;j++)cin>>a[i][j]; for(int i=1;i<=n;i++){ int l1=1,l2=1,r1=0,r2=0; for(int j=1;j<=m;j++){ while(l1<=r1&&j-q1[l1]>=len)l1++; while(l2<=r2&&j-q2[l2]>=len)l2++; while(l1<=r1&&a[i][j]>=a[i][q1[r1]])r1--; while(l2<=r2&&a[i][j]<=a[i][q2[r2]])r2--; q1[++r1]=j;q2[++r2]=j; cmax[i][j]=a[i][q1[l1]];cmin[i][j]=a[i][q2[l2]]; } } int ans=INT_MAX; for(int j=len;j<=m;j++){ int l1=1,l2=1,r1=0,r2=0; for(int i=1;i<=n;i++){ while(l1<=r1&&i-q1[l1]>=len)l1++; while(l2<=r2&&i-q2[l2]>=len)l2++; while(l1<=r1&&cmax[i][j]>=cmax[q1[r1]][j])r1--; while(l2<=r2&&cmin[i][j]<=cmin[q2[r2]][j])r2--; q1[++r1]=i;q2[++r2]=i; if(i>=len)ans=min(ans,cmax[q1[l1]][j]-cmin[q2[l2]][j]); } } cout<<ans<<'\n'; return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/7 15:49:11

图解说明MicroPython如何在ESP32上部署Web服务器

用MicroPython在ESP32上搭一个能远程控制LED的Web服务器&#xff0c;就这么干&#xff01; 你有没有想过&#xff0c;一块不到20块钱的ESP32开发板&#xff0c;加上几行Python代码&#xff0c;就能变成一个真正的物联网设备&#xff1f;手机连上同一个Wi-Fi&#xff0c;打开浏…

作者头像 李华
网站建设 2026/4/18 4:00:31

Qwen-Image-2512-ComfyUI快速上手:内置工作流调用教程

Qwen-Image-2512-ComfyUI快速上手&#xff1a;内置工作流调用教程 1. 技术背景与使用价值 随着多模态大模型的快速发展&#xff0c;图像生成技术已逐步从实验室走向实际应用。阿里云推出的 Qwen-Image-2512-ComfyUI 是基于通义千问系列的开源图像生成解决方案&#xff0c;集成…

作者头像 李华
网站建设 2026/4/19 17:44:32

树莓派换源入门必看:新手配置指南

树莓派换源实战指南&#xff1a;从卡顿到飞速的秘诀你有没有经历过这样的场景&#xff1f;刚拿到树莓派&#xff0c;兴致勃勃地插上电、烧好系统&#xff0c;准备安装第一个软件——结果一条sudo apt update执行下去&#xff0c;终端卡在“正在连接 archive.raspbian.org”不动…

作者头像 李华
网站建设 2026/4/11 10:12:02

GLM-4.6V-Flash-WEB自动化脚本:一键完成初始化配置

GLM-4.6V-Flash-WEB自动化脚本&#xff1a;一键完成初始化配置 智谱最新开源&#xff0c;视觉大模型。 1. 引言 1.1 技术背景与应用场景 随着多模态大模型的快速发展&#xff0c;视觉语言模型&#xff08;Vision-Language Models, VLMs&#xff09;在图像理解、图文生成、视觉…

作者头像 李华
网站建设 2026/4/20 18:21:39

Whisper Large v3成本控制:按需使用GPU的计费策略

Whisper Large v3成本控制&#xff1a;按需使用GPU的计费策略 1. 引言 1.1 业务场景描述 随着多语言语音识别需求在客服、教育、内容创作等领域的快速增长&#xff0c;基于大模型的自动语音识别&#xff08;ASR&#xff09;服务正成为企业数字化转型的关键组件。OpenAI 的 W…

作者头像 李华
网站建设 2026/4/15 14:18:14

ESP32 Arduino多设备Wi-Fi组网方案设计思路

用ESP32玩转多设备Wi-Fi组网&#xff1a;从零搭建稳定高效的物联网通信系统你有没有遇到过这样的场景&#xff1f;在做一个智能家居项目时&#xff0c;手头有十几个传感器节点&#xff0c;每个都用ESP32做主控。你想让它们统一上报数据、接受控制指令&#xff0c;但一上电就“挤…

作者头像 李华