题意:给定一个序列,每次将第一个元素放至末尾,求其形成的所有序列中逆序数和最小;可利用归并排序求出第一次的逆序数和,在用下面的公式求解最小的逆序数和;当然此题暴力也可过。如果每次都进行如上操作,那么最多进行n-1次后会与原序列重合;这个序列的元素是从0---(n-1),当某个元素位于首位置时,其本身...
分类:
其他好文 时间:
2015-08-08 09:04:12
阅读次数:
108
题意: bobo has a sequence a1,a2,…,an. He is allowed to swap twoadjacentnumbers for no more than k times.Find the minimum number of inversions after his ...
分类:
编程语言 时间:
2015-08-07 22:04:12
阅读次数:
138
离散化 + 树状数组。
先处理出所有会变动的位置,然后求出这些位置上最终的数值。
接着分两步,先求出这些元素之间的逆序数,再求每个元素和其余不变动元素间的逆序数...
分类:
其他好文 时间:
2015-08-07 14:49:52
阅读次数:
118
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1394
理解了归并排序,学习了一下别人的博客,有把这个题目给敲了一遍。。。
这道题我用归并排序是我目前过的最快的算法62ms。。。当然,在我得博客里也有有线段树和树状数组求逆序数的模板;
这里我就没有离散化,还不能算是所有逆序数的模板。。。
对于归并排序不太了解的我推荐一个博客,里面有很详细的图...
分类:
编程语言 时间:
2015-08-07 11:06:05
阅读次数:
136
原题poj 2299:http://poj.org/problem?id=2299题意,给你一个数组,去统计它们的逆序数,由于题目中说道数组最长可达五十万,那么O(n^2)的排序算法就不要再想了,接下来的选择是快排,归并,看你喜欢了这里列出归并的解法:#include"iostream"using ...
分类:
编程语言 时间:
2015-08-05 12:36:56
阅读次数:
149
利用归并排序统计逆序数,利用归并求逆序在对子序列s1和s2在归并时(s1,s2已经排好序),若s1[i]>s2[j](逆序状况),则逆序数加上s1.length-i,因为s1中i后面的数字对于s2[j]都是逆序的。 1 #include 2 #include 3 int N; 4 int num.....
分类:
编程语言 时间:
2015-08-05 12:30:09
阅读次数:
169
归并排序(求逆序数)归并排序:递归+合并+排序时间复杂度:O(n logn)空间复杂度:O(n)用途:1.排序 2.求逆序对数DescriptionIn this problem, you have to analyze a particular sorting algorithm. The alg...
分类:
编程语言 时间:
2015-08-04 22:20:25
阅读次数:
113
归并排序求逆序数Time Limit:7000MSMemory Limit:65536KB64bit IO Format:%I64d & %I64uDescriptionIn this problem, you have to analyze a particular sorting algorit...
分类:
编程语言 时间:
2015-08-03 14:15:21
阅读次数:
122
之前写过树状数组的,再用线段树写一下~~~ 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 using namespace std; 8 #define lp (p << 1) 9 #define rp (p <...
分类:
其他好文 时间:
2015-07-31 20:15:25
阅读次数:
122
1,join----------数组转换为字符串
var arr=[1,2,3];
arr.join("_"); //'1_2_3"
2,reverse----数组逆序(数组被修改)
var arr=[1,2,3];
arr.reverse(); //[3,2,1]
arr; //[3,2,1]
3,sort---------数组排序(数组被...
分类:
编程语言 时间:
2015-07-31 13:00:42
阅读次数:
125