归并
Clove_unique
All that you have lost can be won back bit by bit as long as you wish for it.
展开
-
[BZOJbegin][NOIP十连测第三场]平均数(二分+归并排序求逆序对)
题目描述题解首先二分一个答案k,将序列中的数都减去k,然后求前缀和。 可以发现平均数小于k的子序列只可能是Si>Sj且i<jS_i>S_j且i<j的。也就是序列中的逆序对数。 因为是实数二分+判定,用归并排序求逆序对即可。 注意判断精度。代码#include<iostream>#include<cstring>#include<cstdio>using namespace std;#d原创 2016-11-16 19:42:28 · 592 阅读 · 0 评论 -
[CODEVS3324]新斯诺克(归并排序求逆序对)
题目描述传送门题解将每个数减去k之后求前缀和。求前缀和数组的逆序对即可。代码#include<iostream>#include<cstring>#include<cstdio>using namespace std;#define LL long long#define N 100005int n,k;LL rev;int a[N],s[N],b[N];void mergesort(i原创 2016-11-16 20:14:54 · 450 阅读 · 0 评论 -
[BZOJ4336][BJOI2015]骑士的旅行(树链剖分+线段树+multiset+归并)
题目描述传送门题目大意:n个点的一棵树,有m个骑士,每个骑士居住在n个点中的一个,有一个武力值fi,有三种操作: 1 x y 询问居住在树链x-y上前k大的骑士的武力值 2 x y 编号为x的骑士居住地改为y 3 x y 编号为x的骑士武力值改为y题解k比较小 树链剖分,对线段树中的底层节点维护一个multiset,维护所有居住在这个点的骑士的武力值,然后线段树中的每一个点开一个结构体原创 2017-05-06 22:04:36 · 1382 阅读 · 0 评论