#ZOJ

BZOJ2002 [Hnoi2010]Bounce 弹飞绵羊 LCT

  沿着一条直线有n个装置,每个装置设定初始弹力系数ki,当绵羊达到第i个装置时,它会往后弹ki步,达到第i+ki个装置,若不存在第i+ki个装置,则绵羊被弹飞。当它从第i个装置起步时,被弹几次后会被弹飞?此外,还会中途修改某个弹力装置的弹力系数,任何时候弹力系数均为正整数。  几乎是LCT板子题。  首先根据输入的建...

BZOJ2303 [Apio2011]方格染色 并查集

  现在有一个N*M矩阵,矩阵上只能填数字0或1 现在矩阵里已经有一些格子被填写了数字,询问是否存在一种填写方案使得「任意一个2*2的矩阵异或和为1」,输出方案总数  我们发现当我们已经确定(1,1)的颜色为1的时候:  我们知道c(i,j)。  那么如果i和j都是偶数,那么就有c(1,1)^c(i,1)^c...

BZOJ2809 [Apio2012]dispatching 可并堆

   n个点组成一棵树,每个点都有一个领导力和费用,可以让一个点当领导,然后在这个点的子树中选择一些费用之和不超过m的点,得到领导的领导力乘选择的点的个数(领导可不被选择)的利润。求利润最大值。n≤100000    做一个类似树形dp的操作。  维护大根堆,每次从子节点到父节点就是...
代码星球 ·2020-06-27

BZOJ1078 [SCOI2008]斜堆 堆

  斜堆(skewheap)是一种常用的数据结构。它也是二叉树,且满足与二叉堆相同的堆性质:每个非根结点的值都比它父亲大。因此在整棵斜堆中,根的值最小。但斜堆不必是平衡的,每个结点的左右儿子的大小关系也没有任何规定。在本题中,斜堆中各个元素的值均不相同。在斜堆H中插入新元素X的过程是递归进行的:当H为空或者X小于H的根...
代码星球 ·2020-06-27

BZOJ2333 [SCOI2011]棘手的操作 堆 左偏树 可并堆

有N个节点,标号从1到N,这N个节点一开始相互不连通。第i个节点的初始权值为a[i],接下来有如下一些操作:U x y: 加一条边,连接第x个节点和第y个节点A1 x v: 将第x个节点的权值增加vA2 x v: 将第x个节点所在...

BZOJ3211 花神游历各国 并查集 树状数组

  有n个数形成一个序列。  m次操作。  有两种,分别是:1. 区间开根(取整)2. 区间求和  这题做法大概我知道的有两种,一种是线段树,一种是并查集+树状数组。  两者都基于一个事实:任何一个数被开根很少的次数就变成1了,然后不变了。所以我们可以暴力解决这个开根的问题。  线段树就打一下lazy标记就可以了。  ...

BZOJ3674 可持久化并查集加强版 可持久化 并查集

n个集合m个操作操作:1ab合并a,b所在集合2k回到第k次操作之后的状态(查询算作操作)3ab询问a,b是否属于同一集合,是则输出1否则输出00<n,m<=2*10^4  上板子#include<cstring>#include<algorithm>#include<cstd...

BZOJ3673 可持久化并查集 by zky 可持久化 并查集

n个集合m个操作操作:1ab合并a,b所在集合2k回到第k次操作之后的状态(查询算作操作)3ab询问a,b是否属于同一集合,是则输出1否则输出00<n,m<=2*10^4  上板子#include<cstring>#include<algorithm>#include<cstd...

BZOJ2243 洛谷2486 [SDOI2011]染色 树链剖分

  一棵树,共n个节点。  让你支持以下两种操作,共m次操作:  1. 区间染色:给定两个节点,让你给树中链接这两个节点的路径染色。  2. 区间询问:给定两个节点,让你求出连接这两个节点的路径的色段数。比如说"112221"就是3段,分别是"11""222""1"  一开始给出初始染色情况。  n<=10000...

BZOJ3223 Tyvj 1729 文艺平衡树 splay

  您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作:翻转一个区间,例如原有序序列是5 4 3 2 1,翻转区间是[2,4]的话,结果是5 2 3 4 1   数据范围:n<=100000  ...

BZOJ5091 摘苹果 BZOJ2017年11月月赛 概率,期望

  #include<cstring>#include<algorithm>#include<cstdio>#include<cstdlib>#include<cmath>usingnamespacestd;typedeflonglongLL;constint...

BZOJ5090 组题 BZOJ2017年11月月赛 二分答案 单调队列

  给出n个数。  求连续区间(长度大于等于k)最大平均值。  这题大概不是原题。  很简单的题目(对于大佬而不对于我来说),做过一次。  具体做法:  首先二分答案平均值(最好用longdouble保证精度)  然后根据前缀和来单调队列判断。  假设当前要判断的答案为x。  我们把原序列的每一个数都减去x。  那么前...

BZOJ1036 [ZJOI2008]树的统计Count 树链剖分

  一个树,每个节点有一个权值。3种操作。  1:修改某一个节点的权值。  2:询问某两个节点间的权值和  3:询问某两个节点之间的最大权值。  树链剖分裸题#include<cstring>#include<algorithm>#include<cstdio>#include<...

BZOJ3224 洛谷3369 Tyvj 1728 普通平衡树 splay

  您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作:1.插入x数2.删除x数(若有多个相同的数,因只删除一个)3.查询x数的排名(若有多个相同的数,因输出最小的排名)4.查询排名为x的数5.求x的前驱(前驱定义为小于x,且最大的数)6.求x的后继(后继定义为大于x,且最小的数)  splay...

BZOJ1008 [HNOI2008]越狱 快速幂

  监狱有连续编号为1...N的N个房间,每个房间关押一个犯人,有M种宗教,每个犯人可能信仰其中一种。如果相邻房间的犯人的宗教相同,就可能发生越狱,求有多少种状态可能发生越狱。  水题一道。  我们考虑发生越狱的是总数-不发生越狱的。  总数很好算:就是mn  但是不发生的同样也很好算。  第一个位置,有m中选择,后面...
首页上一页...1314151617...下一页尾页