【洛谷P4280】逆序对

HDMI 2.1超高清传输背后的“隐形功臣”:深入浅出图解VESA DSC压缩核心流程 本文深入解析HDMI 2.1超高清传输中的VESA DSC压缩技术,揭示其如何在不损失画质的前提下实现带宽减半。通过切片并行处理和智能算法,DSC技术有效解决了8K/4K高帧率视频的传输瓶颈,成为现代显示设备不可或缺的“隐形功臣”。 阅读详情

题目

题目链接:https://www.luogu.com.cn/problem/P4280
暑假到了,小可可和伙伴们来到海边度假,距离海滩不远的地方有个小岛,叫做欢乐岛,整个岛是一个大游乐园,里面有很多很好玩的益智游戏。碰巧岛上正在举行“解谜题赢取免费门票”的活动,只要猜出来迷题,那么小可可和他的朋友就能在欢乐岛上免费游玩两天。
迷题是这样的:给出一串全部是正整数的数字,这些正整数都在一个范围内选取,谁能最快求出这串数字中“逆序对”的个数,那么大奖就是他的啦!
当然、主办方不可能就这么简单的让迷题被解开,数字串都是被处理过的,一部分数字被故意隐藏起来,这些数字均用-1来代替,想要获得大奖就必须求出被处理的数字串中最少能有多少个逆序对。小可可很想获得免费游玩游乐园的机会,你能帮助他吗?
注:“逆序对”就是如果有两个数A和B,A在B左边且A大于B,我们就称这两个数为一个“逆序对”,例如:4 2 1 3 3里面包含了5个逆序对:(4, 2)、(4, 1)、(4, 3)、(4, 3)、(2, 1)。
n≤10000,m≤100n\leq 10000,m\leq 100n≤10000,m≤100。

思路

不难发现填进去的数一定是单调不减的,手画分类讨论一下就可以得出。
然后就是一道裸的 dp 了。设 fi,jf_{i,j}fi,j​ 表示前 iii 个位置,最后一个填的是 jjj 的最小逆序对数。注意这里只计算填入的数产生的逆序对数量,已经有的数可以直接计算出来最后加上。
预处理 g0/1,i,jg_{0/1,i,j}g0/1,i,j​ 表示前缀不小于 jjj 的数字数量,以及后缀不大于 jjj 的数字数量。然后转移就直接随便写写就行了。
时间复杂度 O(nm)O(nm)O(nm)。

代码

#include <bits/stdc++.h>
using namespace std;

const int N=10010,M=110,Inf=1e9;
int n,m,cnt,a[N],f[N][M],g[2][N][M];

int main()
{
	scanf("%d%d",&n,&m);
	memset(f,0x3f3f3f3f,sizeof(f));
	f[0][1]=0;
	for (int i=1;i<=n;i++)
		scanf("%d",&a[i]);
	for (int i=1;i<=n;i++)
		for (int j=1;j<=m;j++)
			g[0][i][j]=g[0][i-1][j]+(a[i]>=j)*(a[i]!=-1);
	for (int i=n;i>=1;i--)
		for (int j=1;j<=m;j++)
			g[1][i][j]=g[1][i+1][j]+(a[i]<=j)*(a[i]!=-1);
	for (int i=1;i<=n;i++)
	{
		if (a[i]!=-1)
		{
			memcpy(f[i],f[i-1],sizeof(f[i]));
			cnt+=g[0][i-1][a[i]+1];
		}
		else
		{
			int minn=Inf;
			for (int j=1;j<=m;j++)
			{
				minn=min(minn,f[i-1][j]);
				f[i][j]=minn+g[0][i-1][j+1]+g[1][i+1][j-1];
			}
		}
	}
	int ans=Inf;
	for (int i=1;i<=m;i++)
		ans=min(ans,f[n][i]);
	printf("%d",ans+cnt);
	return 0;
}
win2012 r2 + IIS8.5 伪静态设置脚本映射 win2012 r2 + IIS8.5 伪静态设置脚本映射,网站用的.net fromwork 2.0 ,应用程序池设置了32位支持 阅读详情

相关推荐

英雄联盟(MOBA)完整制作教程

这是一份从零到上线、可落地的 LOL 风格 MOBA 游戏开发全流程教程,覆盖策划、美术、程序、测试、运营全环节,适合独立团队或学习参考。

qq_35779316的博客 541

洛谷 逆序对(归并排序|树状数组)

题目链接: 逆序对 - 洛谷 leetcode也有原题,考虑到leetcode题解写的好,也贴个链接:力扣 -数组中的逆序对 思路: 在归并排序中,除了数组最左边的元素,其他元素都有机会出现在将要合成的两个数组的右半边数组中,在“并”的过程中,需要逐个比较左右两个数组的数字,在这个比较的过程,可以顺便计算逆序数数量。 举个栗子,左半边数组是1 6 8 9,右半边是1 3 4 5,i是左数组,指针,j是右数组指针。 当 i 指向6,j 指向3的时候,要把3放进数组对吧,但是在这之前我们加一步.

bunny_1024的博客 1544

基于CNN网络的轴承故障诊断

内容参考:《基于卷积神经网络的轴承故障 诊断算法研究》–张伟 代码参考: https://github.com/AaronCosmos/wdcnn_bearning_fault_diagnosis 1 背景: 基于信号处理的特征提取+分类器的传统智能诊断算法,对专家经验要求高,设计耗时且不能保证通用性,已经不能满足机械大数据的要求。提出使用基于卷积神经网络智能诊断算法来自动完成特征提取以及故障识别。 1.1 挑战 机电产品故障诊断面临的挑战,有三大特点: (1)数据量大,专业分析人员的数量严重不足,仅依靠人

weixin_45679938的博客 7万+

洛谷 P2513 ——逆序对数列

题目描述 对于一个数列 {ai}\{a_i\}{ai​},如果有 i<ji<ji<j 且 ai>aja_i>a_jai​>aj​,那么我们称 aia_iai​ 与 aja_jaj​ ​ 为一对逆序对数。 若对于任意一个由 1∼n1∼n1∼n 自然数组成的数列,可以很容易求出有多少个逆序对数。 那么逆序对数为 k 的这样自然数数列到底有多少个? 输入格式 第一行为两个整数 n,kn,kn,k。 输出格式 写入一个整数,表示符合条件的数列个数,由于这个数可能很大,你只需输出

六级不考550+不改名 1074

从零构建:STM32与EC800 4G模块的工业物联网数据透传实战

本文详细介绍了如何从零构建STM32与EC800 4G模块的工业物联网数据透传系统。内容涵盖硬件选型、抗干扰电路设计、AT指令稳定性优化、网络连接管理、可靠数据透传协议以及低功耗策略,为开发者提供了一套可直接应用于工业场景的完整实战方案。

uran的专栏 1014

3DGS-to-PC实战指南:零代码实现3D高斯场景到点云/Mesh的高效转换

本文详细介绍了3DGS-to-PC工具如何实现3D高斯场景到点云/Mesh的高效转换,无需代码即可完成。通过实战案例和参数调优技巧,帮助用户快速掌握这一开源插件的使用方法,提升3D数据处理效率。特别适合建筑扫描、影视特效等领域的专业人士。

q1w3e5r7t9y的博客 274

洛谷 P1908 逆序对

洛谷 P1908 逆序对。考察高效排序算法(也许

qq_17807067的博客 903

Jetson Orin Nano Super开发板实战:视觉模型部署与性能优化指南

本文详细介绍了Jetson Orin Nano Super开发板在边缘AI视觉模型部署与性能优化的完整实战指南。内容涵盖JetPack 6.1环境配置、Docker容器化部署、YOLO11及Transformer模型的TensorRT优化技巧,并通过实测数据展示了性能提升与功耗管理策略,为开发者提供高效的视觉AI部署解决方案。

7h6j5k4l3的博客 1196

P1908 逆序对

题目描述 猫猫TOM和小老鼠JERRY最近又较量上了,但是毕竟都是成年人,他们已经不喜欢再玩那种你追我赶的游戏,现在他们喜欢玩统计。最近,TOM老猫查阅到一个人类称之为“逆序对”的东西,这东西是这样定义的:对于给定的一段正整数序列,逆序对就是序列中ai&gt;aj且i&lt;j的有序对。知道这概念后,他们就比赛谁先算出给定的一段正整数序列中逆序对的数目。Update:数据已加强。 输入输出格式...

森宝的博客 849

YOLO26魔改神技:YOLO26引入SimAM(无参注意力):不增加网络参数的3D能量函数提点黑科技

文章摘要 2026年YOLO26模型发布引发边缘计算革命,但特定场景精度不足问题催生注意力机制改进需求。本文聚焦无参数注意力机制SimAM,基于神经科学理论通过3D能量函数直接计算神经元权重,实现零参数量提升模型性能。文章深度解析YOLO26四大创新架构,对比SimAM与传统注意力机制差异,并探讨其在YOLO26中的集成方案。研究显示,SimAM在不增加模型体积前提下显著提升mAP指标,特别适合边缘端部署。全文涵盖架构设计、代码实现、竞品对比、部署方案等维度,为轻量化视觉模型优化提供系统解决方案。

ZDQ58818的博客 274

智能车图像处理19-进阶篇11--斜入十字补线

这篇文章主要讲述智能车竞赛中如何对于斜入十字进行补线操作。

taiyuezyh的博客 7488

洛谷 4828 Nagisa loves Tomoya 题解

博客观赏效果更佳](https://lightninguz2.github.io/2019/11/02/洛谷-4828-Nagisa-loves-Tomoya-题解/) 题意简述 给定一个序列aaa,长度n<=1e6n<=1e6n<=1e6,以及Q(<=1e4)Q(<=1e4)Q(<=1e4)个询问。定义一次操作如下:对于每个iii,a[i]+=a[i%n+1]...

LightningUZ的博客 328

【雕爷学编程】MicroPython手册之 Teensy 4.1 实时时钟 (RTC)

在类的初始化函数中,定义了用于控制I2C总线的i2c对象和RTC模块的I2C地址。接着,使用该引脚初始化了一个Pin对象。它还提供了8个串口,3个SPI端口,3个I2C端口,2个I2S/TDM数字音频端口,3个CAN总线(其中一个支持CAN FD),以及一个SDIO(4位数据)原生SD卡端口12。2、内存:Teensy 4.1配备了1024 KB的RAM(其中512 KB是紧密耦合的),8 MB的Flash(其中64 KB用于恢复和EEPROM模拟),以及两个位置可以选择添加更多的QSPI内存芯片。

雕爷学编程 575

P4280 [AHOI2008]逆序对(dp)

https://www.luogu.com.cn/problem/P4280 思考: 直接去dp很难转移。 但是这个题有个结论。填的数一定是满足不严格单调上升序列,不然答案会更差。 不妨设a<b,序列为: a,.....,b,记中间部分为L 原来的逆序对数量为 a在前b在后:count(L,<=a)+count(L,>=b) 交换a,b b在前a在后:count(L,<=b)+count(L,>=a) 其中L内的逆序对数量一样 画出数轴 可以得出a&l

代码笔记本 330

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

洛谷 P4280 [AHOI2008]逆序对 题解(预处理+dp)

题目链接 题目思路 前言 这题目搞了我好久,看了好久的题解才看懂,以后状态不好还是不要写题。题目难度也比较难。但多看几遍就懂了 正文 首先,我们考虑填入的数需要满足的性质。一定是满足不严格单调上升序列 对于两个空位a和b,分别填入数x和y,且x<y。如果我们交换x和y,会有如下性质: 1.[1,a-1]和[b+1,n]中的数与x y构成的逆序对数不变。 2.[a+1,b-1]中大于x或小于y...

hunxuewangzi的博客 276

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

T5Gemma-2 LaTeX OCR微调实战:轻量多模态模型的端到端训练指南

LaTeX OCR 是将数学公式图像精准转为可编译 LaTeX 代码的关键技术,其核心依赖多模态序列到序列(Seq2Seq)建模能力。原理上需协同处理图像 patch embedding 与文本 tokenization,并在 encoder-decoder 架构中实现跨模态对齐。技术价值在于突破传统 OCR 对字体、排版的强假设,支持手写体、低分辨率及嵌套结构公式识别。典型应用场景包括学术论文数字化、教育题库构建与科研笔记自动化。本文聚焦 T5Gemma-2 这一 270M 参数量的轻量级多模态模型,深入

weixin_30435261的博客 692

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

洛谷--逆序对

题目描述 猫猫TOM和小老鼠JERRY最近又较量上了,但是毕竟都是成年人,他们已经不喜欢再玩那种你追我赶的游戏,现在他们喜欢玩统计。最近,TOM老猫查阅到一个人类称之为“逆序对”的东西,这东西是这样定义的:对于给定的一段正整数序列,逆序对就是序列中ai>aj且i<j的有序对。知道这概念后,他们就比赛谁先算出给定的一段正整数序列中逆序对的数目。 ...

weixin_30538029的博客 364

洛谷 P1908 逆序对(树状数组+离散化)

题目描述 猫猫 TOM 和小老鼠 JERRY 最近又较量上了,但是毕竟都是成年人,他们已经不喜欢再玩那种你追我赶的游戏,现在他们喜欢玩统计。 最近,TOM 老猫查阅到一个人类称之为“逆序对”的东西,这东西是这样定义的:对于给定的一段正整数序列,逆序对就是序列中 ai>aja_i>a_jai​>aj​ 且 i<ji<ji<j 的有序对。知道这概念后,他们就比赛谁先算出给定的一段正整数序列中逆序对的数目。注意序列中可能有重复数字。 Update:数据已加强。 输入格式 第一行

Running Snail 493

洛谷 - 逆序对 (归并排序,分治,树状数组)

题目链接 题目: 思路: 归并排序:时间复杂度稳定在N(logN)。 习惯了用二分排序,很少了解其他的排序,但是事实证明这是错误的。。。。 归并排序用的是分治法,何为分治?分治就是大事化小,小事化不了。。。 归并排序就是不断的把区间分小,直到分到只有一个数的区间,那么我们再比较俩个一个数的区间。 例: 分小的俩个区间 为 6 9 和 7 8,我们比较8和6 7 > 6,那么我们用一个数组记录目前最小的元素c[m++] = 6,然后再判断这个区间中是否还有元素,9 < 7,c[m++] = 7

give it a try 405

逆序对

题目描述 猫猫TOM和小老鼠JERRY最近又较量上了,但是毕竟都是成年人,他们已经不喜欢再玩那种你追我赶的游戏,现在他们喜欢玩统计。最近,TOM老猫查阅到一个人类称之为“逆序对”的东西,这东西是这样定义的:对于给定的一段正整数序列,逆序对就是序列中ai>aj且i 输入输出格式 输入格式: 第一行,一个数n,表示序列中有n个数。 第二行n个数,表示给定的序列。 输出格式: 给定序列中逆

wzw-yali的博客 638

洛谷P1908 逆序对

题目描述 猫猫TOM和小老鼠JERRY最近又较量上了,但是毕竟都是成年人,他们已经不喜欢再玩那种你追我赶的游戏,现在他们喜欢玩统计。最近,TOM老猫查阅到一个人类称之为“逆序对”的东西,这东西是这样定义的:对于给定的一段正整数序列,逆序对就是序列中ai&gt;aj且i&lt;j的有序对。知道这概念后,他们就比赛谁先算出给定的一段正整数序列中逆序对的数目。 输入输出格式 输入格式:   第...

Low Coder的博客 477

P1908 逆序对(洛谷)

原题传送门 思路:这题实在坑,直接暴力法要超时,加个归并排序模板又要注意逆序对的数量如何求出,因为两段都是有序的了,所以前面一段中找到一个比后面中的某个大的时候,前面一段后面所有的数都要比它大了,统计个数就为m-i+1,这是这道题的关键点,然后算法的话就是分治+归并排序,有涉及递归的过程。 代码参考 在这里插入代码片 ...

Bertil的博客 575

#归并排序#(洛谷 1908)逆序对

题目描述 猫猫TOM和小老鼠JERRY最近又较量上了,但是毕竟都是成年人,他们已经不喜欢再玩那种你追我赶的游戏,现在他们喜欢玩统计。最近,TOM老猫查阅到一个人类称之为“逆序对”的东西,这东西是这样定义的:对于给定的一段正整数序列,逆序对就是序列中ai>aj且i<j的有序对。知道这概念后,他们就比赛谁先算出给定的一段正整数序列中逆序对的数目。 这道题目用了归并排序求逆序对。 #i...

lemondinosaur的博客 383

洛谷 p1908 逆序对 归并排序

题目描述 猫猫TOM和小老鼠JERRY最近又较量上了,但是毕竟都是成年人,他们已经不喜欢再玩那种你追我赶的游戏,现在他们喜欢玩统计。最近,TOM老猫查阅到一个人类称之为“逆序对”的东西,这东西是这样定义的:对于给定的一段正整数序列,逆序对就是序列中ai&amp;amp;amp;amp;gt;aj且i&amp;amp;amp;amp;lt;j的有序对。知道这概念后,他们就比赛谁先算出给定的一段正整数序列中逆序对的数目。Update:数据已加强。 输入输...

h1astro的博客 863

洛谷 1908 逆序对

//树状数组 #include<bits/stdc++.h> using namespace std; const int maxn = 100010; int n, s, haoyu[maxn], c[maxn];struct node{ int x, site; } a[maxn];bool cmp(node p, node q){ return p.x < q.x; }voi

ToheartZhang的博客 533

P4280 逆序对

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 P4280 逆序对题意思路AC代码 题意 给 一个长度为 n的数组 每个数的范围 为 1~k 其中有 -1的 表示 未知(可填从1~k的任意一个数) 求少逆序对的数量 思路 从大佬博客看来的思路 我自己就心证 证明了-1位置必须要填非严格单调递增 因为数据其实挺少的 可以稍微暴力一点 先预处理 biger[i][j]; //代表i位置上填j其前面有多少比他大的数的数目 small[i][j];//代表i位置上填j其后面有多少比他小的数的数目

m0_52414547的博客 176
上一篇: 【洛谷P3273】棘手的操作
下一篇: 【CF103D】Time to Raid Cowavans
stoorz1023
博客等级 码龄9年 101粉丝 595原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值