题目链接题意 : 给你一个数列,可以随意交换两相邻元素,交换次数不超过k次,让你找出i aj的(i,j)的对数最小是多少对。思路 : 一开始想的很多,各种都想了,后来终于想出来这根本就是求逆序数嘛,可以用归并排序,也可以用树状数组,不过我们用树状数组做错了,也不知道为什么。求出逆序数来再减掉k次,....
分类:
其他好文 时间:
2014-08-05 22:02:20
阅读次数:
210
显然每次交换都能减少1
所以求出逆序数对数,然后-=k就好了。。。
_(:зゝ∠)_
#include
#include
#include
#include
#include
#include
#include
using namespace std;
#define N 100005
#define ll long long
ll c[N+100000], maxn;
inlin...
分类:
其他好文 时间:
2014-08-05 19:25:20
阅读次数:
213
在解题过程中,我们有时需要维护一个数组的前缀和S[i]=A[1]+A[2]+...+A[i]。但是不难发现,如果我们修改了任意一个A[i],那么S[i]、S[i+1]...S[n]都会发生变化。可以说,每次修改A[i]后,调整前缀和S在最坏情况下会需要O(n)的时间。当n非常大时,程序会运行得非常缓慢。因此,这里我们引入“树状数组”,它的修改与求和都是O(logn)的,效率非常高。...
分类:
其他好文 时间:
2014-08-05 14:15:00
阅读次数:
193
树状数组相对比较基础的入门题目,可以多阅读几次!...
分类:
其他好文 时间:
2014-08-05 14:12:29
阅读次数:
154
树状数组枚举裁判位置,设裁判为第i 个人,左边有l[i]个比他小的选手,右边有r[i]个比他小的选手;令c[i]表示技能值为i 的人是否存在,计算l[i] 即c[1]~c[i-1]的和,计算l[i]后使c[a[i]]=1;同理求r[i]; 1 #include 2 #include 3 #inc.....
分类:
其他好文 时间:
2014-08-04 17:29:47
阅读次数:
184
HDU 4908 BestCoder Sequence
题目链接
题意:给定一个序列,1-n的数字,选定一个作为中位数m,要求有多少连续子序列满足中位数是m
思路:组合数学,记录下m左边和右边一共有多少种情况大于m的数字和小于n数组的差,然后等于左边乘右边所有的和,然后最后记得加上左右两边差为0的情况。
当时也是比较逗,还用树状数组去搞了,其实完全没必要
代码:
...
分类:
其他好文 时间:
2014-08-04 02:06:26
阅读次数:
249
Description
Vasya is a ufologist and his duties include observing Unidentified Flying Objects (UFOs) in the part of space bounded by a cube N × N ×N. The cube is divided into cubic sectors 1 ...
分类:
其他好文 时间:
2014-08-01 19:58:52
阅读次数:
302
Suppose that the fourth generation mobile phone base stations in the Tampere area operate as follows....
分类:
其他好文 时间:
2014-08-01 13:48:01
阅读次数:
280
Apple Treehttp://poj.org/problem?id=3321 1 #include 2 #include 3 #define mt(a,b) memset(a,b,sizeof(a)) 4 const int M=100010; 5 struct G{ 6 struct ...
分类:
其他好文 时间:
2014-08-01 13:18:11
阅读次数:
178