线段树或树状数组求逆序数
假设给你一个序列 6 1 2 7 3 4 8 5, 首先我们先手算逆序数, 设逆序数为 N;
6的前面没有比他大的数 N +=0
1的前面有一个比他大的数 N+=1
2的前面有一个比他大的数 N+=1
7的前面没有比他大的数 N+=0
... 最后得到 N = 0 + 1 + 1 + 0 + 2 + 2 + 0 + 3 = 9
其实我们可用用线段树,或者树状数组模拟这个过程。 又因为线段树和树状数组的效率较高,所以可行...
分类:
编程语言 时间:
2015-08-21 13:33:18
阅读次数:
242
题目链接:点击打开链接
题意描述:给定一个长度为100000的数组,每个元素范围在1~100000,且互不相同,交换其中的任意两个数需要花费的代价为两个数之和。问如何交换使数组有序,花费的代价最小?
解题思路:
1、显然我们知道,要使一个数组有序至少交换的次数(即必须要交换的次数)为数组中的逆序数
2、由于数组的长度比较大所以我们可以通过树状数组来统计结果
此处需要两个树状数组
第一个...
分类:
编程语言 时间:
2015-08-20 22:34:00
阅读次数:
259
Sort it
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 3418 Accepted Submission(s): 2478
Problem Description
You want to proces...
分类:
编程语言 时间:
2015-08-19 16:44:23
阅读次数:
191
http://acm.hdu.edu.cn/showproblem.php?pid=1394
Minimum Inversion Number
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 14648 Acc...
分类:
其他好文 时间:
2015-08-19 09:33:05
阅读次数:
114
题意 :求 循环序列的最小逆序数 线段树求出最初的逆序数, 吧 Num[1] 移动到 最后一位, 逆序数减少 Num【1】-1,单比Num【1】大的有 n - Num【1】个 ,又会增加 n - Num【1】个 故可快速求出 最小逆序数 #include #include #include #def...
分类:
其他好文 时间:
2015-08-18 13:39:03
阅读次数:
131
在学习八数码A*搜索问题的时候需要知道以下几个点:
Hash:利用康托展开进行hash
康托展开主要就是根据一个序列求这个序列是第几大的序列。
A*搜索:这里的启发函数就用两点之间的曼哈顿距离进行计算就可以。
减枝:在八数码里,任意交换一个空行和一个位置的数字,这个八数码的逆序数是不变的,这样就可以根据目前状态判断是否可达终点状态了。
第一次做这个题用的map进行哈希,结果果断超...
分类:
其他好文 时间:
2015-08-18 12:07:49
阅读次数:
139
题目就是让你求逆序数,用树状数组很简单,不过数据太大,要先进行离散化,将数据范围压缩到1~n以内。还有poj竟然不支持c++11,害得我lambda表达式编译错误。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#i...
分类:
编程语言 时间:
2015-08-17 14:10:03
阅读次数:
154
http://acm.hdu.edu.cn/showproblem.php?pid=5372/*要求有多少线段被现在加进去的线段完全覆盖,所求即左端点比当前加进去的线段大的减去右端点比当前加进去的线段大的,就是覆盖的线段树用两个树状数组来更新左端点和右端点的值跟求逆序数那道题目一样,进行排序,二分得...
分类:
编程语言 时间:
2015-08-14 15:16:44
阅读次数:
141
Minimum Inversion Number
Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other)
Total Submission(s) : 1 Accepted Submission(s) : 1
Font: Times New Roman | Verdana ...
分类:
其他好文 时间:
2015-08-13 14:28:07
阅读次数:
134
DescriptionThe world famous scientist Innokentiy almost finished the creation of perpetuum mobile. Its main part is the energy generator which allows ...
分类:
其他好文 时间:
2015-08-13 11:50:08
阅读次数:
123