1zhengfangxing

news/发布时间2024/8/25 20:32:32

// Problem: 理想的正方形
// Contest: AcWing
// URL: https://www.acwing.com/problem/content/description/1093/
// Memory Limit: 64 MB
// Time Limit: 1000 ms
//
// Powered by CP Editor (https://cpeditor.org)

// %%%Skyqwq

include <bits/stdc++.h>

//#define int long long

define help

define pb push_back

define fi first

define se second

define mkp make_pair

using namespace std;

typedef long long LL;
typedef pair<int, int> PII;
typedef pair<LL, LL> PLL;

template bool chkMax(T &x, T y) { return (y > x) ? x = y, 1 : 0; }
template bool chkMin(T &x, T y) { return (y < x) ? x = y, 1 : 0; }

template void inline read(T &x) {
int f = 1; x = 0; char s = getchar();
while (s < '0' || s > '9') { if (s == '-') f = -1; s = getchar(); }
while (s <= '9' && s >= '0') x = x * 10 + (s ^ 48), s = getchar();
x *= f;
}

const int N=1005;
int n,m,k,a[N][N];
int row_min[N][N],row_max[N][N],mx[N],mn[N],tmp[N];
int q[N],hh,tt;
void get_min(int a[],int b[],int n)
{
hh=tt=0;
for(int i=1;i<=n;i++)
{
while(hh<=tt&&i-q[hh]+1>k)hh++;
while(hh<=tt&&a[q[tt]]>=a[i])tt--;
q[++tt]=i;
b[i]=a[q[hh]];
}
}
void get_max(int a[],int b[],int n)
{
hh=tt=0;
for(int i=1;i<=n;i++)
{
while(hh<=tt&&i-q[hh]+1>k)hh++;
while(hh<=tt&&a[q[tt]]<=a[i])tt--;
q[++tt]=i;
b[i]=a[q[hh]];
}
}
int main()
{
scanf("%d%d%d",&n,&m,&k);
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)scanf("%d",&a[i][j]);
for(int i=1;i<=n;i++)get_min(a[i],row_min[i],m),get_max(a[i],row_max[i],m);
int res=1e9;
for(int j=k;j<=m;j++)
{
for(int i=1;i<=n;i++)tmp[i]=row_min[i][j];
get_min(tmp,mn,n);
for(int i=1;i<=n;i++)tmp[i]=row_max[i][j];
get_max(tmp,mx,n);
for(int i=k;i<=n;i++)res=min(res,mx[i]-mn[i]);
}
printf("%d",res);
return 0;
}

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

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

相关文章

2023CSP复赛游寄

CSP 2023 游记 优先看https://www.luogu.com.cn/paste/xegs7srz CSP终于来了,本想着这次pj 300+,tg 2=。看来要AFO了……7:40 到了耀华考场,没想到已经有很多人来了,@Frank08,@2020luke,@mayingdi520 都来了。。他们好像二十分就来了。过了一会,@2023FJZ来了,在他的外…

7.5 Windows驱动开发:监控Register注册表回调

在笔者前一篇文章`《内核枚举Registry注册表回调》`中实现了对注册表的枚举,本章将实现对注册表的监控,不同于32位系统在64位系统中,微软为我们提供了两个针对注册表的专用内核监控函数,通过这两个函数可以在不劫持内核API的前提下实现对注册表增加,删除,创建等事件的有效…

拒绝连锡!3种偷锡焊盘轻松拿捏

在PCBA生产中,经常容易在器件的尾端产生连锡现象,在生产中为了避免这种缺陷,设计时需要在器件的尾部加一对无电气属性的焊盘,即为偷锡焊盘。其作用是在焊接过程中,引导锡膏或焊锡流向正确的位置,从而提高焊接的一次性成功率。 在PCB设计中,我们经常需要处理各种封装的元…

JVM 内存分析工具 MAT 的深度讲解与实践

1. MAT 工具简介 MAT(全名:Memory Analyzer Tool),是一款快速便捷且功能强大丰富的 JVM 堆内存离线分析工具。其通过展现 JVM 异常时所记录的运行时堆转储快照(Heap dump)状态(正常运行时也可以做堆转储分析),帮助定位内存泄漏问题或优化大内存消耗逻辑。 1.1 MAT 使用…

编译jar包获取源码

1、下载JD-GUI JD-GUI下载地址2、下载完成后,解压压缩包即可,双击打开JD_GUI3、新版m1芯片mac可能会出现如下报错4、解决办法: 4.1 右键点击JD-GUI,点击显示包内容4.2 进入Contents/MacOS文件夹,打开universalJavaApplicationStub.sh文件,使用新版的文件替换,新版文件内…

vmware配置ubuntu20.04虚拟机,同时配置桥接网络共享主机的物理网络

1. 在vm中配置网络 在vm编辑菜单中选择虚拟网络编辑器选择高级权限进行编辑,编辑桥接模式: 在桥接模式中选择宿主机的物理网卡。本操作出现的问题是,容易识别不出物理网卡。 win+r services.msc 进入服务启动管理。重启vm服务。重启虚拟机进入ubuntu系统之后,通过ifconfi…

2023华为杯研究生赛awdp-web复现

被我们web队组会狠狠push了...但是看了下这个研究生赛的题目,难度还是不高的,还不至于队里佬们打实时比赛我看着都费劲那种.....😭😭😭 Constellation_query 源码:from flask import Flask, request, render_template,render_template_string from datetime import da…

【虹科分享】亚运会赛果可视化分析

在虹科Domo商业云平台(HK-Domo)上制作的一个亚运会可视化数据看板,会是什么效果呢?书接上回,武林高手同台比武,打得热火朝天,历经16日,终于落下帷幕,各路英雄再归于江河湖海。这期间,新鲜事层出不穷,要说各位最爱聊的,还得是谁胜谁负。这不,在下又上科技与绝活了!…

Docker部署code-server

一、简介 code-server是一款运行在浏览器界面上的可以安装在任何机器上的VSCode程序,code-server不仅继承了VSCode的使用逻辑,丰富的插件,在VSCode的基础上还提供了更多VSCode所没有的特性,满足更多的使用场景和业务需求。 二、安装code-server 绿联 DX4600 为例,首先我们…

深入理解计算机系统(原书第三版)PDF 高清中文版

深入理解计算机系统 PDF 深入理解计算机系统 pdf, 这本书的全名是:Computer Systems:A Programmer’s Perspective(所以它又被称为 CSAPP),个人习惯把它翻译为程序员所需了解的计算机系统知识,尽管土了些,但更名副其实。 深入理解计算机系统 是我读过的最优秀的计算机系…

Web开发技术架构设计

Web开发技术架构设计是一项非常重要的工作,它关系到Web应用的性能、安全、可靠性等方面。以下是Web开发技术架构设计中需要考虑的几个方面: 1、前端技术架构设计 前端技术架构设计是Web开发技术架构设计中重要的一环。前端技术架构设计包括界面设计、交互设计、视觉设计、前端…

图论算法

强连通分量 Tarjan 抽象难懂的算法 第一次接触链式前向星,本算法储存方式为链式前向星,用vector不香吗 神犇的blog 通俗易懂的讲解 通俗题解 抽象难懂的讲解 P1656题解-生动形象讲解割边 这个算法很多什么low啊,dfn啊,把你搞得很晕…… 其实整个算法就是基于DFS然后再加上玄…

Linux图形驱动与图形调度分析

Linux图形驱动与图形调度分析 Linux图形驱动 Linux图形堆栈在过去几年中经历了许多演变。本节的目的是详细说明这段历史,并给出多年来所做更改背后的理由。今天,设计仍然深深植根于这段历史,本节将解释这段历史,以更好地推动Linux图形堆栈的当前设计。下面简述Linux图形驱动…

计算机基础了解

计算机基础了解 什么是计算机Computer : 全称电子计算机,统称电脑按照程序运行,自动,高速处理海量数据的现代智能电子设备是由硬件和软件组成常见的有台式,笔记本,大型计算机等应用在:科学计算,人工智能,数据处理,网络等领域硬件 一些物理装置按系统结构要求构成一个有…

SQL LIKE 运算符:用法、示例和通配符解释

SQL中的LIKE运算符用于在WHERE子句中搜索列中的指定模式。通常与LIKE运算符一起使用的有两个通配符:百分号 % 代表零个、一个或多个字符。 下划线 _ 代表一个单个字符。以下是LIKE运算符的用法和示例: 示例 选择所有以字母 "a" 开头的客户: SELECT * FROM Custome…

R数据分析:集成学习方法之随机生存森林的原理和做法,实例解析

很久很久以前给大家写过决策树,非常简单明了的算法。今天给大家写随机(生存)森林,随机森林是集成了很多个决策数的集成模型。像随机森林这样将很多个基本学习器集合起来形成一个更加强大的学习器的这么一种集成思想还是非常好的。所以今天来写写这类算法。 集成学习方法Ens…

【模板】可持久化线段树 2

【模板】可持久化线段树 2 题目背景 这是个非常经典的可持久化权值线段树入门题——静态区间第 $k$ 小。 数据已经过加强,请使用可持久化权值线段树。同时请注意常数优化。 题目描述 如题,给定 $n$ 个整数构成的序列 $a$,将对于指定的闭区间 $[l, r]$ 查询其区间内的第 $k$ …

实验1-2

实验1-2 如题:思路: 使用动态规划的思想(DP思路,即一个大一点规模的问题可以被拆解为更小的,更容易解决的问题) 首先,定义一个数组 dp,用来存储每个数的分解式个数。 dp[i] 表示当前数 i 的不同分解式的个数。 接下来,从数 2 开始循环,逐个计算每个数的分解式个数。d…

移动光猫拨号(路由模式)下的IPV6获取方式

按图设置即可1、设置拨号连接,获取前缀2、将前缀填写到用户侧的IPV6设置里3、测试ipv6 或者:在哪里获取前缀,前缀在哪里出现的 设置完,等候5分钟,去 状态页找前缀信息。本文来自博客园,作者:木子欢儿,转载请注明原文链接:https://www.cnblogs.com/HGNET/p/17852237.h…

Unity异常提示 Invalid worldAABB. Object is too large or too far away from the orgin.

Unity在编辑器退出EditMode进入PlayMode之前,调用了一次Start和Update,然后提供了空的数据。 这个时候容易造成除以0的情况,但是Unity没有立刻抛出异常,而是继续执行,生成了一个无穷大的数值。
推荐文章