Description 某正教授级特级教师获得了一段古老的文字,全部由 26 个大写英文字母组成。他产生了一个疯狂的想法,即想把这段文字中所有字母按 A 到 Z 的顺序排序,即所有 A 放在开头,然后跟着所有 B,再是所有 C,最后是所有 Z。比如原字符串为“HELLOWORLD”,排序后应变为“D ...
分类:
其他好文 时间:
2018-10-08 13:58:42
阅读次数:
115
题目大意: 定义一种新的排序算法:随机的选一个数,若比它后一个大就交换,直到后一个比它小,完成一次操作。现在给定一个n个数的数列(保证是1~n的一个排列),问最少随机多少次?(T ≤ 200)(1 ≤ N ≤ 10 6). 思路: 对于每一个数,查看它与后面的数是否能构成逆序对就好。查找逆序对用归并 ...
分类:
其他好文 时间:
2018-10-06 23:11:04
阅读次数:
146
P3157 [CQOI2011]动态逆序对 https://www.luogu.org/problemnew/show/P3157 题目描述 对于序列A,它的逆序对数定义为满足i<j,且Ai>Aj的数对(i,j)的个数。给1到n的一个排列,按照某种顺序依次删除m个元素,你的任务是在每次删除一个元素之 ...
分类:
其他好文 时间:
2018-10-06 23:06:53
阅读次数:
261
题意:给一段子序列,定义密度:子序列中的逆序对数/子序列的长度 求这个序列的对大密度. 分析:将序列中的每个位置视作点,逆序对$$之间表示点i与点j之间有一条无向边.所以就转化为了最大密度子图的模型. ...
分类:
其他好文 时间:
2018-10-06 14:23:12
阅读次数:
172
设 A 为一个有 n 个数字的有序集 (n>1),其中所有数字各不相同。 如果存在正整数 i, j 使得 1 ≤ i < j ≤ n 而且 A[i] > A[j],则 <A[i], A[j]> 这个有序对称为 A 的一个逆序对。 逆序对的解法 第一种:冒泡法(暴力)/ 枚举 直接对原序列进行冒泡排序 ...
分类:
其他好文 时间:
2018-10-04 18:56:07
阅读次数:
241
题意:找到最小改变对数使a数组的第i大和b数组的第i大相等 则先将a,b,数组编号再排序,则数组显示的就是排名第i的数的编号 再关键一步:c[a[i].id]=b[i].id 实质上就是新建一个数组,按照现有a数组的排布,和b数组进行比较,看是否有逆序对存在,有则需要更换,故再求逆序对即可 ...
分类:
其他好文 时间:
2018-10-03 23:45:05
阅读次数:
130
题意:给出序列前k项中的逆序对数,构造出这个序列. 分析:使用权值线段树来确定序列元素. 逆序对的数量肯定是递增的,从最后一个元素开始逆向统计,则$a[i] a[i 1]$即位置i之前比位置i上的数大的个数.则该位置的数应该是序列中第$i a[i]+a[i 1]$大的数,通过权值线段树查询全局第k大 ...
分类:
其他好文 时间:
2018-10-02 22:19:29
阅读次数:
159
其实我并没有见过原题,只是因为...这被改编成了互测题... 题目中提到了一个序列,这个序列是很重要的,否则这个问题好像是没有合理的时间复杂度解法的 但正因为有了这个序列,这个问题的时间复杂度才让人能够接受 序列的特性:逆序对! 根据题意,我们发现一个图上所有的连边一定来源于这个序列里的逆序对! 那 ...
分类:
其他好文 时间:
2018-10-02 17:36:20
阅读次数:
131
luogu P1966 火柴排队 题目链接:https://www.luogu.org/problemnew/show/P1966 ~~显然~~贪心的想,排名一样的数相减是最优的. 证明也很简单. 此处就不证明了. 然后交换的话就是求一个逆序对. 怎么样排序是一个关键. $c$数组的下标是$a$的排 ...
分类:
其他好文 时间:
2018-09-29 18:19:35
阅读次数:
173