![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
逆序对
逆序对
hnjzsyjyj
这个作者很懒,什么都没留下…
展开
-
逆序对的数量(脱胎于归并排序)
【问题描述】给定一个长度为n的整数数列,请你计算数列中的逆序对的数量。逆序对的定义如下:对于数列的第 i 个和第 j 个元素,如果满 i < j 且 a[i] > a[j],则其为一个逆序对;否则不是。【输入格式】第一行包含整数n,表示数列的长度。第二行包含 n 个整数,表示整个数列。【输出格式】输出一个整数,表示逆序对的个数。【数据范围】1≤n≤100000【测试样例】输入样例:62 3 4 5 6 1输出样例:5【算法分析】利用归并排序,可以很方便写出求逆序对数量的代原创 2021-08-17 22:31:44 · 163 阅读 · 0 评论 -
归并排序(微改后便成为求逆序对数量的代码)
【归并排序算法代码】下文源代码是归并排序的一种实现方法。若去掉其中的第26行语句ans+=mid-ls+1; 及第42行语句cout<<ans;前的注释,并在第40行语句for(int i=1; i<=n; i++) cout<<a[i]<<" ";前添加注释之后,便成为求逆序对的代码。#include <bits/stdc++.h>using namespace std; const int maxn=100005;int...原创 2021-08-17 22:59:40 · 113 阅读 · 0 评论