题目描述 猫猫TOM和小老鼠JERRY最近又较量上了,但是毕竟都是成年人,他们已经不喜欢再玩那种你追我赶的游 戏,现在他们喜欢玩统计。最近,TOM老猫查阅到一个人类称之为“逆序对”的东西,这东西是这样定义的:对于给定的一段正整数序列,逆序对就是序列中 ai>aj且i<j的有序对。知道这概念后,他们就 ...
分类:
编程语言 时间:
2016-06-10 19:11:53
阅读次数:
362
题意:给一个序列,n个数,可以进行k次操作,每次可以交换相邻的两个数,问最多k次操作后最少剩余多少个逆序对 分析:如果序列中存在逆序对,那么每次操作,只会影响相邻的两个数,也就是说每次操作最多减少1个逆序对,那么只要求出原来序列的逆序对ans 输出max(ans-k,0) #include<iost ...
分类:
其他好文 时间:
2016-06-06 16:53:14
阅读次数:
198
1688 求逆序对 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 1688 求逆序对 1688 求逆序对 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 时间限制: 1 s 空间限制: 128000 KB 题目 ...
分类:
其他好文 时间:
2016-06-05 12:38:26
阅读次数:
184
莫队算法+树状数组+离散化。 一定要注意莫队转移时增加或减少的逆序对数,比较容易写挂。 离散化那部分虽然效率很低,但是很好写,正确性也很容易保证,虽然会拖慢程序运行速度,但编码的复杂度却大大降低了。 我觉得是一种不错的选择。//反正是抄的黄学长的。。 #include #include #inclu... ...
分类:
其他好文 时间:
2016-06-01 21:13:23
阅读次数:
136
#include<algorithm> #include<iostream> #include<cstring> #include<cstdio> #define N 100005 using namespace std; int read() { int x=0; char ch; bool bo ...
分类:
其他好文 时间:
2016-05-29 21:32:28
阅读次数:
192
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=3295 CDQ分治加凸包,水题一道,看看程序就懂了。 1 #include<cstdio> 2 #include<cstring> 3 #include<iostream> 4 #includ ...
分类:
其他好文 时间:
2016-05-26 22:02:20
阅读次数:
308
冒泡排序中 如果一个数的后面的某个数和这个数不符合排序规则 那么这个数就会在未来的某次冒泡中与那个数进行交换 这里用到了 树状数组求逆序数的办法来做 需要注意的是2028并不可以改完数组大小后直接套1526代码 因为会超出int的范围 树状数组求逆序对的耗时要比归并排序长一些 不过简单.. 之所以要 ...
分类:
编程语言 时间:
2016-05-22 16:54:55
阅读次数:
155
[BZOJ1786][BZOJ1831]逆序对 试题描述 输入 输出 输入示例 输出示例 数据规模及约定 见“输入” 题解 首先这题有一个性质,即,填的数从左到右一定不降。证明不妨读者自己yy(提示:用先按降序填,交换后答案一定不会更差的思想证)。 那么新添的数字一定不会造出逆序对了。 然后设计 d ...
分类:
其他好文 时间:
2016-05-13 20:27:17
阅读次数:
162
剑指Offer 面试题36:数组中的逆序对
题目:在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。
例如, 在数组{7,5,6,4}中,一共存在5个逆序对,分别是(7,6),(7,5),(7,4),(6,4)和(5,4),输出5.
提交网址: http://www.nowcoder.com/practic...
分类:
编程语言 时间:
2016-05-13 04:22:36
阅读次数:
590