随笔分类 -  OI

上一页 1 2 3 4 5 6 7 8 9 ··· 11 下一页
摘要:问题描述 "LG2996" 题解 和没有上司的舞会双倍经验? $\mathrm{Code}$ 阅读全文
posted @ 2019-11-10 21:52 览遍千秋 阅读(124) 评论(0) 推荐(0)
摘要:问题描述 "LG3237" 题解 问题转化为: 要求将这棵树,满足 结点 $x$ 所有孩子权值相等 结点 $x$ 权值等于所有孩子权值和 将乘法转化为 $\log$ 加法 $\mathrm{Code}$ 阅读全文
posted @ 2019-11-10 21:11 览遍千秋 阅读(111) 评论(0) 推荐(0)
摘要:问题描述 "LG3237" 题解 问题转化为: 要求将这棵树,满足 结点 $x$ 所有孩子权值相等 结点 $x$ 权值等于所有孩子权值和 将乘法转化为 $\log$ 加法 $\mathrm{Code}$ 阅读全文
posted @ 2019-11-10 21:11 览遍千秋 阅读(111) 评论(0) 推荐(0)
摘要:问题描述 "LG4107" 题解 首先,我们可以直接令结点 $x$ 的权值为 $c[x]+son_x$ ,发现将 $x,y$ 合并,相当于增加 $c[x]+c[y] 1$ 的重量。 容易想到对于每个结点 $x$ ,贪心的从小到大合并 $c[y],y \in son(x)$ ,可以获得最大的答案。 $ 阅读全文
posted @ 2019-11-10 20:39 览遍千秋 阅读(145) 评论(0) 推荐(0)
摘要:问题描述 "LG4107" 题解 首先,我们可以直接令结点 $x$ 的权值为 $c[x]+son_x$ ,发现将 $x,y$ 合并,相当于增加 $c[x]+c[y] 1$ 的重量。 容易想到对于每个结点 $x$ ,贪心的从小到大合并 $c[y],y \in son(x)$ ,可以获得最大的答案。 $ 阅读全文
posted @ 2019-11-10 20:39 览遍千秋 阅读(145) 评论(0) 推荐(0)
摘要:问题描述 "LG4556" 题解 对于每一个结点,建立一棵动态开点线段树。 然后自低向上合并线段树。 同时维护整个值域的最大值和最大值位置。 $\mathrm{Code}$ 阅读全文
posted @ 2019-11-10 07:10 览遍千秋 阅读(136) 评论(0) 推荐(0)
摘要:问题描述 "LG CF1005F" 题解 由题面显然可得,所求即最短路树。 所以跑出最短路树,计数,输出方案即可。 $\mathrm{Code}$ 阅读全文
posted @ 2019-11-06 21:43 览遍千秋 阅读(182) 评论(0) 推荐(0)
摘要:问题描述 "CF786B" "LG CF786B" 题解 线段树优化建图 线段树的一个区间结点代表 $[l,r]$ 区间点。 然后建立区间点的时候就在线段树上建边,有效减少点的个数,从而提高时空效率。 "优质题解传送门" $\mathrm{Code}$ 阅读全文
posted @ 2019-11-05 21:01 览遍千秋 阅读(112) 评论(0) 推荐(0)
摘要:问题描述 "CF915E" "LG CF915E" 题解 $n \le 10^9$ 看上去非常唬人。 但是这种区间操作的题,珂朵莉树随便跑啊。 $\mathrm{Code}$ 阅读全文
posted @ 2019-11-03 21:57 览遍千秋 阅读(116) 评论(0) 推荐(0)
摘要:问题描述 "LG CF343D" 题解 树剖,线段树维护0 1序列 yzhang:用珂朵莉树维护多好 $\mathrm{Code}$ cpp include using namespace std; template void read(Tp &x){ x=0;char ch=1;int fh; w 阅读全文
posted @ 2019-11-03 21:20 览遍千秋 阅读(185) 评论(0) 推荐(0)
摘要:问题描述 LG4979 题解 珂朵莉树+O2简直就是绝配 对于操作 A ,直接 \(\mathrm{assign}\) 推平就完事了。 对于操作 B ,如果它左右端点有在边界上的,直接把区间 $[l,r]$撕出来判断就完了,如果不在边界上,先把单点 \({l-1,r+1}\) 撕出来判,如果符合条件 阅读全文
posted @ 2019-11-03 21:18 览遍千秋 阅读(73) 评论(0) 推荐(0)
摘要:问题描述 "CF896C" "LG CF896C" 题解 我expect就是T飞,从这里跳下去,也不碰和珂朵莉相关的任何东西。 珂朵莉树真好使。 珂朵莉树模板。 $\mathrm{Code}$ cpp include using namespace std; define int long long 阅读全文
posted @ 2019-11-03 17:45 览遍千秋 阅读(203) 评论(0) 推荐(0)
摘要:问题描述 "LG2495" 题解 虚树 $\mathrm{Code}$ 阅读全文
posted @ 2019-11-02 21:29 览遍千秋 阅读(144) 评论(0) 推荐(0)
摘要:先开坑。 md原题写挂我也真是。。。 100+20+10 白夜 打表大法吼 显然,不在环上的点对答案的贡献是 $(k cycle)^{k 1}$ 。 打表得到环上的递推式,矩阵一下乘起来就好了。 cpp include using namespace std; define int long lon 阅读全文
posted @ 2019-11-02 11:01 览遍千秋 阅读(141) 评论(0) 推荐(0)
摘要:问题描述 "LG1345" 题解 点边转化,最小割,完事。 $\mathrm{Code}$ cpp include using namespace std; template void read(Tp &x){ x=0;char ch=1;int fh; while(ch!=' '&&(ch '9' 阅读全文
posted @ 2019-11-01 21:55 览遍千秋 阅读(128) 评论(0) 推荐(0)
摘要:问题描述 "LG1345" 题解 点边转化,最小割,完事。 $\mathrm{Code}$ cpp include using namespace std; template void read(Tp &x){ x=0;char ch=1;int fh; while(ch!=' '&&(ch '9' 阅读全文
posted @ 2019-11-01 21:55 览遍千秋 阅读(128) 评论(0) 推荐(0)
摘要:问题描述 "LG1344" 题解 我太菜了,我一开始竟然没有看出这是个最小割裸题。。。 两个询问。 第一个询问,直接跑最小割就好了。 第二个询问,建图的时候边权建 $1$ ,代表割掉这条边需要 $1$ 的代价。 $\mathrm{Code}$ cpp include using namespace 阅读全文
posted @ 2019-11-01 21:35 览遍千秋 阅读(106) 评论(0) 推荐(0)
摘要:问题描述 "LG1344" 题解 我太菜了,我一开始竟然没有看出这是个最小割裸题。。。 两个询问。 第一个询问,直接跑最小割就好了。 第二个询问,建图的时候边权建 $1$ ,代表割掉这条边需要 $1$ 的代价。 $\mathrm{Code}$ cpp include using namespace 阅读全文
posted @ 2019-11-01 21:35 览遍千秋 阅读(106) 评论(0) 推荐(0)
摘要:问题描述 "POJ1741" 题解 题意是求树上满足两点之间距离 $dis \le k$ 的点对 $(x,y)$ 的数目。 点分治。 $\mathrm{Code}$ cpp include include include include using namespace std; template v 阅读全文
posted @ 2019-11-01 15:12 览遍千秋 阅读(102) 评论(0) 推荐(0)
摘要:写在前面 先开个坑... 之前学过点分治,但是总是感觉打的时候内心莫名的慌,敲完几个函数的定义就开始脑袋一片空白。 所以重学了一下点分治,并写了这篇博客。 看看什么时候把它补完吧。 \(\mathrm{1}\) 参考资料 找了两篇还不错的博客 https://www.cnblogs.com/bztM 阅读全文
posted @ 2019-11-01 15:04 览遍千秋 阅读(317) 评论(2) 推荐(2)

上一页 1 2 3 4 5 6 7 8 9 ··· 11 下一页