记得去年模拟赛的时候好像YY出二分答案枚举a,b的暴力,过了55欸然后看正解,为了将两维变成一维,将a排序,模拟Kruskal的加边过程,同时维护1到n的最大值,加入一条边e(u,v,a,b)时有以下两种情况:1) 若u,v已连通,则找出u->v上最大的b',若bn,因为去掉b'所在边时1,n一定不...
分类:
其他好文 时间:
2015-05-12 00:03:17
阅读次数:
216
LCT模版题。。。。#include #include #include #include #include #include #include #define rep(i, l, r) for(int i=l; in)#define l(x) c[x][0]#define r(x) c[x][1]...
分类:
其他好文 时间:
2015-05-05 19:24:40
阅读次数:
232
之前在bzoj上做了几道WC的题目,现在整理一下bzoj2115 去膜拜莫队的《高斯消元解xor方程组》bzoj2597 LCT维护MSTbzoj1758 分数规划+树分治+单调队列bzoj2595 斯坦纳树,一类用spfa转移的dp,具体可以膜拜《spfa算法的优化及应用》(我是不会插头的蒟蒻)b...
分类:
其他好文 时间:
2015-05-03 10:28:52
阅读次数:
246
楼教的男人八题名气甚大,今天做了一道感觉还是涨了不少姿势的,然而估计之后的每道题都要看题解吧,姑且先记录一下。以后再做再更1737Connected Graph1100LouTiancheng@POJ1738An old Stone Game407LouTiancheng@POJ1739Tony's...
分类:
其他好文 时间:
2015-04-28 22:47:03
阅读次数:
327
题目链接:BZOJ - 3531题目分析题目询问一条路径上的信息时,每次询问有某种特定的文化的点。每个点的文化就相当于一种颜色,每次询问一条路径上某种颜色的点的信息。可以使用离线算法, 类似于“郁闷的小 J ” 那道题目。将各种操作和询问按照颜色为第一关键字,时间为第二关键字排序。那么修改颜色的操作...
分类:
其他好文 时间:
2015-04-25 22:33:15
阅读次数:
204
题目链接:BZOJ - 3669题目分析如果确定了带 x 只精灵A,那么我们就是要找一条 1 到 n 的路径,满足只经过 Ai #include #include #include #include #include using namespace std;inline void Read(int ...
分类:
其他好文 时间:
2015-04-23 19:11:05
阅读次数:
193
题目链接:BZOJ - 3282题目分析这道题是裸的LCT,包含 Link , Cut 和询问两点之间的路径信息。写代码时出现的错误:Access(x) 的循环中应该切断的是原来的 Son[x][1] ,然而我写成了 Son[x][0] !代码#include #include #include #...
分类:
其他好文 时间:
2015-04-22 11:14:53
阅读次数:
157
题目链接:BZOJ - 2049题目分析LCT的基本模型,包括 Link ,Cut 操作和判断两个点是否在同一棵树内。Link(x, y) : Make_Root(x); Splay(x); Father[x] = y;Cut(x, y) : Make_Root(x); Access(y); 断掉 ...
分类:
其他好文 时间:
2015-04-21 22:26:35
阅读次数:
197
裸题嘛。。
先考虑一条线段上如何查询颜色段数,只要对每个线段树节点多维护一个左颜色和右颜色,然后合并的时候sum[x]=sum[lc]+sum[rc]-(左儿子的右颜色==右儿子的左颜色)。。实在太久没写树剖结果码+调试花了两节多晚自习,,各种傻逼错误,什么反向边忘加,标记忘记下传。。。还有就是更新答案的时候,关键的一点是要保证当前的两点(也就是a,b)是没有被更新到的,否则很难搞。。
...
分类:
其他好文 时间:
2015-04-20 09:36:39
阅读次数:
196
题目链接:BZOJ - 1036题目分析这道题可以用树链剖分,块状树等多种方法解决,也可以使用 LCT。修改某个点的值时,先将它 Splay 到它所在的 Splay 的根,然后修改它的值,再将它 Update 一下。询问 x, y 两点之间的路径时,假设 x 是深度小的那一个,先 Access(x)...
分类:
其他好文 时间:
2015-04-16 21:16:51
阅读次数:
227