信息学奥赛一本通1311:【例2.5】求逆序对

信息学奥赛一本通(C++版)第二部分 基础算法 第二章 数据排序 第二章 数据排序 阅读详情

1311:【例2.5】求逆序对


时间限制: 1000 ms         内存限制: 65536 KB
提交数: 61497     通过数: 14704

【题目描述】

给定一个序列a1,a2,…,an�1,�2,…,��,如果存在i<j�<�并且ai>aj��>��,那么我们称之为逆序对,求逆序对的数目。

【输入】

第一行为n�,表示序列长度,接下来的n�行,第i+1�+1行表示序列中的第i�个数。

【输出】

所有逆序对总数。

【输入样例】

4
3
2
3
2

【输出样例】

3

【提示】

N≤10^5,Ai≤10^5。

 用二分的归并排序来求出交换了几次(有几对逆序数)

#include<bits/stdc++.h>
using namespace std;
int n,a[100001],x1[100001];
long long cnt;
void msort(int x[],int l,int r)
{
	if(l>=r)
	{
		return;
	}
	int l1=l,mid=(l+r)/2,r1=mid+1,x2=l;
	msort(x,l,mid);
	msort(x,mid+1,r);
	while(l1<=mid&&r1<=r)
	{
		if(x[l1]<=x[r1])
		{
			x1[x2++]=x[l1++];
		}
		else
		{
			cnt+=mid-l1+1;
			x1[x2++]=x[r1++];
		}
	}
	while(l1<=mid)
	{
		x1[x2++]=x[l1++];
	}
	while(r1<=r)
	{
		x1[x2++]=x[r1++];
	}
	for(int i=l;i<=r;++i)
	{
		x[i]=x1[i];
	}
}
int main()
{
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
	}
	msort(a,1,n);
	cout<<cnt;
}

ybt信息学奥赛_[置顶] 信息学奥赛一本通(C++版... 信息学奥赛一本通(C++版) 第二部分 基础算法 第二章 数据排序//ybt 1310 【例2.2】车厢重组//洛谷 P1116 车厢重组//题目若不标难度,看起来很吓人,排序的算法很多,会造成比较次数不同//归并排序 需要空间,从题意看提供不了//该题只给了一个交换空间,基本上属冒泡或快排//极端情况,快排与冒泡算法复杂度相同//并且交换的元素是相邻的,故只有冒泡系列了,该题,难在思路,写写很... 阅读详情

相关推荐

1311:【例2.5】求逆序对

1311:【例2.5】求逆序对 时间限制: 1000 ms 内存限制: 65536 KB 【题目描述】 给定一个序列a1,a2,…,an,如果存在i<j并且ai>aj,那么我们称之为逆序对,求逆序对的数目。 【输入】 第一行为n,表示序列长度,接下来的n行,第n+1行表示序列中的第n个数。 【输出】 所有逆序对总数。 【输入样例】 4 3 2 3 2 【输出样例】 3 ...

lybc2019的博客 3537

一本通题解——1311:【例2.5】求逆序对

本题没有什么难度,一个模板题。之所以要写这个题解,是因为我自己第一次提交的时候,竟然没有 AC。老子立马懵逼了。后面耐心的分析了一下数据,才发现自己的错误在哪里。透剧一下,掉到数据越界的深坑了。所以记录一下。 题目 题目链接 一本通OJ:http://ybt.ssoier.cn:8088/problem_show.php?pid=1311。 我的OJ:http://47.110.135.1...

努力中的老周的专栏 7832

信息学奥赛一本通(基础算法与数据结构-题解汇总目录)

信息学奥赛一本通(基础算法与数据结构-题解汇总)

lybc2019的博客 1万+

1311:【例2.5】求逆序对 归并排序

1311:【例2.5】求逆序对 归并排序

m0_46183615的博客 696

算法-求逆序对(信息学奥赛一本通-T1311).rar

算法-求逆序对(信息学奥赛一本通-T1311).rar

保姆级教程:QGC地面站Vehicle Setup全模块配置详解(从固件升级到安全设置)

本文提供QGC地面站Vehicle Setup全模块配置的保姆级教程,涵盖从固件升级到安全设置的完整流程。详细解析二次开发环境准备、传感器校准、飞行模式配置等关键步骤,帮助用户快速掌握无人机配置技巧,确保飞行安全与性能优化。

weixin_28726671的博客 387

信息学奥赛一本通:1311:【例2.5】求逆序对

给定一个序列a1,a2,…,an,如果存在i<j并且ai>aj,那么我们称之为逆序对,求逆序对的数目。时间限制: 1000 ms 内存限制: 65536 KB。第一行为n,表示序列长度,接下来的n行,第i+1行表示序列中的第i个数。提交数:74572 通过数: 17809。1311:【例2.5】求逆序对。

u014117969的博客 1868

旋转因子量化仿真

在单bit接收机中,通过量化FFT核函数来简化计算,将复数坐标中旋转因子单位圆上的点近似到正方形四个边上,就能够用累加实现复数乘法,从而避免使用DSP乘法器。通过仿真查看不同阶的核函数简化效果。

CyberInversion的博客 3103

信息学奥赛一本通 1311:【例2.5】求逆序对

题目描述】给定一个序列,如果存在并且,那么我们称之为逆序对,求逆序对的数目。【输入】第一行为n,表示序列长度,接下来的n行,第i+1行表示序列中的第i个数。【输出】所有逆序对总数。【输入样例】43232【输出样例】3【提示】。代码。

pystraf的博客 647

核函数——原理剖析

(Kernel Function)是机器学习和统计学中的一个重要概念,特别是在支持向量机(SVM)和其他基于核方法的算法中。核函数的主要作用是通过一个隐式的方式将数据映射到一个高维空间,从而使得在该高维空间中线性不可分的问题变得线性可分。没关系,现在让我们抛开一切无关的事情,花20分钟来认真领会一下,核函数的原理到底是什么。然后我们来说什么什么样的函数有资格称为核函数,也就是上面说的一个函数的内积矩阵是半正定矩阵。中的分布如左图所示。中是不可实现的,那如果我们将原始空间中的所有样本点,通过一个映射关系。

m0_70254540的博客 1587

TGK-planner编译报错PLUGINLIB_EXPORT_CLASS解决

TGK-planner编译报错解决。

latter97的博客 857

【题解-信息学奥赛一本通】1311:【例2.5】求逆序对

那么我们称之为逆序对,求逆序对的数目。第一行为n,表示序列长度,接下来的n。行,第i+1行表示序列中的第i个数。

写代码的犄角旮瘩 62

ADS学习笔记 2. 低噪声放大器设计

ADS学习笔记 2. 低噪声放大器设计。设计了一个中心频率433MHz,增益18.206dB,NF=0.134dB,S11带宽较好的低噪声放大器

u014087103的博客 9507

信息学奥赛一本通 1311:【例2.5】求逆序对 数据排序

给定一个序列a1,a2,…,an,如果存在iaj,那么我们称之为逆序对,求逆序对的数目。时间限制: 1000 ms 内存限制: 65536 KB。第一行为n,表示序列长度,接下来的n行,第i+1行表示序列中的第i个数。1311:【例2.5】求逆序对。

长春高老师编程 1308

unity中判断是否联网,判断网络状态的两种方式

unity中判断是否联网,判断网络状态的两种方式

wla2996gpy032的博客 1876

华为OD机试 - 幸运数字(Java 2024 E卷 100分)

华为OD机试 2024E卷题库疯狂收录中,刷题。

学Java,找哪吒 3775

信息学奥赛一本通 1311:【例2.5】求逆序对 | 1237:求排列的逆序数 | OpenJudge NOI 2.4 7622:求排列的逆序数 | 洛谷 P1908 逆序对

【题目链接】 ybt 1311:【例2.5】求逆序对 ybt 1237:求排列的逆序数 OpenJudge NOI 2.4 7622:求排列的逆序数 洛谷 P1908 逆序对 ybt 1311,1237 OpenJudge 2.4 7622几题输入数据的最大个数为10510^5105 洛谷 P1908 输入数据的最大个数为5∗1055*10^55∗105 【题目考点】 1. 归并排序 求逆序对 【君义精讲】排序算法 【解题思路】 如果直接写两层循环寻找逆序对,时间复杂度是O(n2)O(n^2)O(n2),该

君义NOIP的博客 5249

Python数据分析师必备:OpenClaw开启Pandas清洗脚本自动生成新时代

本文介绍了OpenClaw这一AI智能体框架如何帮助Python数据分析师高效完成数据清洗工作。OpenClaw通过自然语言交互理解用户需求,自动生成Pandas清洗脚本,显著提升了数据清洗效率,降低了技术门槛。文章详细阐述了OpenClaw的工作原理、实战应用步骤及其在电商、金融、医疗等行业中的成功案例。相比传统手动编写脚本方式,OpenClaw能快速生成规范准确的清洗代码,使数据分析师能更专注于业务洞察。该工具为数据驱动决策提供了可靠支持,是数据分析领域的重要创新。

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 230

信息学奥赛一本通|1311:【例2.5】求逆序对

第一行为n,表示序列长度,接下来的n行,第i+1行表示序列中的第ii个数。时间限制: 1000 ms 内存限制: 65536 KB。提交数: 39250 通过数: 9202。,那么我们称之为逆序对,求逆序对的数目。,如果存在i...

1gongziyue的博客 430

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

一本通 1311:【例2.5】求逆序对 ,两种解法(归并、线段树)

引用洛谷P1908 我会说明树状数组与归并排序两种解法,线段树解法与树状数组类似 ① 归并排序解法 首先你需要知道什么是归并排序。然后,我们可以这样想: 如果我们想要将一个序列排成从小到大有序的,那么每次划分后合并时左右子区间都是从小到大排好序的,我们只需要统计右边区间每一个数分别会与左边区间产生多少逆序对即可。 不懂的话看栗子: //在某个时候,左区间: 5 6 7 下...

广东省清远市博爱学校—尚贤的博客 2179

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

【信奥一本通刷题记录】1311:【例2.5】求逆序对

信奥一本通刷题记录:1311:【例2.5】求逆序对

Acui的博客 585

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

[信息学奥赛一本通-T1311]求逆序对

题目链接 题目描述 给定一个序列a1,a2,…,an,如果存在i<j并且ai>aj,那么我们称之为逆序对,求逆序对的数目。 输入 第一行,一个数 n,表示序列中有 n个数。 第二行 n 个数,表示给定的序列。序列中每个数字不超过 int 所表示的范围。 输出 所有逆序对总数。 样例输入 4 3 2 3 2 样例输出 3 提示 数据经过加强!!! 对于 25% 的数据,n≤2500 对于 50% 的数据,n≤4×104。 对于所有数据,n≤5×105 请使用较快的输入输出 标程 #include&

a1351937368的博客 1050
上一篇: devc++跑酷游戏2.0.1
下一篇: 信息学奥赛一本通1258:【例9.2】数字金字塔
Jsjjsnmsk
博客等级 码龄4年 548粉丝 41原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值