题意:给你n个数的序列,每次只允许把最前面的数放到序列后面,求这当中最少的逆序数。(表达能力略差呀,不知道说清没。::>_ 2 #include 3 #include 4 #include 5 #include 6 7 using namespace std; 8 9 const in...
分类:
其他好文 时间:
2014-08-14 23:45:46
阅读次数:
409
解题报告
题目传送门
题意:
给n个数,每次左移一位,求最小逆序数。
思路:
如果每次左移一位求一次逆序数肯定不行的。
可以知道,每次左移一位,也就是第一个数移到最后一位,逆序数应该减去第一个数以后比第一个数小的个数,再加上比第一个数大的个数。
原本用线段树求出每一位后面比这一位小的个数再用上面的办法求最小逆序数,没有想到每一次移动会导致后面比它本身大的数都要加1。
这题巧妙就在这...
分类:
其他好文 时间:
2014-08-14 10:46:48
阅读次数:
190
第一章 行列式 §1 二阶与三阶行列式------------------>行列式的概念 §2 全排列及其逆序数 §3 n 阶行列式的定义 §4 对换------------------------------>行列式的性质及计算 §5 行列式的性质 §6 行列式按行(列)展开 §7 克拉默法则--...
分类:
其他好文 时间:
2014-08-14 06:07:28
阅读次数:
383
为什么线段树可以求逆序数?
给一个简单的序列 9 5 8 他的逆序数是3
首先要求一个逆序数有两种方式:可以从头开始往后找比当前元素小的值,也可以从后往前找比当前元素大的值,有几个逆序数就是几。
线段树就是应用从后往前找较大值得个数。(一边更新一边查)
当前个数是 n = 10
元素 9 5 8
9先加入线段树,T【9】+=1;查从T【9】到T【10】比9大的值,...
分类:
其他好文 时间:
2014-08-13 22:41:17
阅读次数:
322
题解:首先是很基础的树状数组求逆序对,然后对于每一个第一个数往后移动,对于逆序数的贡献是n-a[i]-1-a[i]。枚举然后求最小值即可。#include #include #include using namespace std;int n,c[5001],x,a[5001];int add(in...
分类:
其他好文 时间:
2014-08-13 17:46:06
阅读次数:
255
http://poj.org/problem?id=2299
最初做离散化的时候没太确定但是写完发现对的---因为后缀数组学的时候,,这种思维习惯了吧
1、初始化as[i]=i;对as数组按照num[]的大小间接排序
2、bs[as[i]]=i;现在bs数组就是num[]数组的离散化后的结果
3、注意,树状数组中lowbit(i) i是不可以为0的,0&(-0)=0,死循环...
...
分类:
其他好文 时间:
2014-08-13 03:36:15
阅读次数:
234
Insertion Sort is a simple sorting technique which was covered in previous challenges. Sometimes, arrays may be too large for us to wait around for in...
分类:
其他好文 时间:
2014-08-12 18:13:14
阅读次数:
404
Minimum Inversion Number
Time Limit: 2000/1000 MS (Java/Others) Memory Limit:
65536/32768 K (Java/Others)
Problem D...
分类:
其他好文 时间:
2014-08-12 09:04:33
阅读次数:
264
解题报告
题意:
求逆序数。
思路:
线段树离散化处理。
#include
#include
#include
#include
#define LL long long
using namespace std;
LL sum[2001000],num[501000],_hash[501000];
void push_up(int rt)
{
sum[rt]=sum[rt...
分类:
其他好文 时间:
2014-08-11 00:22:01
阅读次数:
255
题目地址:POJ 2299
这题曾经用归并排序做过,线段树加上离散化也可以做。一般线段树的话会超时。
这题的数字最大到10^10次方,显然太大,但是可以利用下标,下标总共只有50w。可以从数字大的开始向树上加点,然后统计下标比它小即在它左边的数的个数。因为每加一个数的时候,比该数大的数已经加完了,这时候坐标在它左边的就是一对逆序数。
但是该题还有一个问题,就是数字重复的问题。这时候可以在排序...
分类:
其他好文 时间:
2014-08-10 15:43:20
阅读次数:
210