#P10510. 逆序数
逆序数
当前没有测试数据。
题目描述
最近智智在 Internet 上的搜索引擎经常需要对信息进行比较,比如可以通过某个人对一些事物的排名来估计他(或她)对各种不同信息的兴趣,从而实现个性化的服务。
对于不同的排名结果可以用逆序来评价它们之间的差异。考虑 的排列 ,如果存在 ,满足 且 ,那么称 是这个排列的一个逆序。
一个排列中逆序的个数称为这个排列的逆序数。
例如排列 263451 含有 8 个逆序:,因此该排列的逆序数就是 8。
显然,由 构成的所有 个排列中,最小的逆序数是 0,对应的排列就是 ;最大的逆序数是 ,对应的排列是 。
逆序数越大的排列与原始排列的差异度越大。
现给定 的一个排列,求它的逆序数。
输入格式
- 第一行是一个整数 ,表示该排列有 个数()。
- 第二行是 个不同的正整数,之间以空格隔开,表示该排列。
输出格式
输出该排列的逆序数。
输入样例 #1
6
2 6 3 4 5 1
输出样例 #1
8
题目说明
- 利用二分归并排序算法(分治);
- 注意结果可能超过 int 的范围,需要用
long long存储。