11 2019 档案

摘要:最好分数:100+20+10+64+64+55 最坏分数:100+20+10+64+36+55 咕咕数据分数:100+25+10+64+60+55 CCF官方: 100+35+10+64+36+55=300 大概是要退役了吧。 $\mathrm 早晨并没有睡懒觉,7点钟就爬起来开始背板子(然而现在看 阅读全文
posted @ 2019-11-16 23:11 览遍千秋 阅读(437) 评论(4) 推荐(0) 编辑
摘要:问题描述 "BZOJ2591" "LG3047" 题解 换根树形DP。 设 opt[i][j] 代表 当 1 为根时,i 为根的子树中,到 i 的距离为 j 的权值和 。 此时我们就可以得到 1 号结点的答案。 考虑这样做 n 遍,可以求出答案,但是会T飞掉。 观察每次暴 阅读全文
posted @ 2019-11-11 15:41 览遍千秋 阅读(156) 评论(0) 推荐(0) 编辑
摘要:问题描述 "LG4395" "BZOJ1369" 题解 发现对于结点 x ,其父亲,自己,和所有的孩子权值不同,共 3 类,从贪心的角度考虑,肯定是填 1,2,3 这三种。 于是套路树形DP,设 opt[x][1/2/3] 代表以 x 为根的子树中,且 x 标为 $0/1/2 阅读全文
posted @ 2019-11-11 15:00 览遍千秋 阅读(132) 评论(0) 推荐(0) 编辑
摘要:问题描述 "BZOJ2073" 题解 发现 n16 ,显然想到状压 设 opt[S] 代表过河集合为 S 时,最小时间。 枚举 S 的子集,进行转移 枚举子集的方法 对于 jk 的子集 当知道 j阅读全文
posted @ 2019-11-11 09:19 览遍千秋 阅读(126) 评论(0) 推荐(0) 编辑
摘要:问题描述 "BZOJ1688" 题解 背包,在转移过程中使用状压。 Code 阅读全文
posted @ 2019-11-11 08:56 览遍千秋 阅读(122) 评论(0) 推荐(0) 编辑
摘要:问题描述 "BZOJ2733" "LG3224" 题解 对于每个结点建立一棵权值线段树。 查询操作就去查询第 k 大,合并操作就合并两颗权值线段树。 并查集维护连通性。 同时 STO hkk,zcr,zzk Code 阅读全文
posted @ 2019-11-11 08:32 览遍千秋 阅读(154) 评论(0) 推荐(0) 编辑
摘要:问题描述 "LG2996" 题解 和没有上司的舞会双倍经验? Code 阅读全文
posted @ 2019-11-10 21:52 览遍千秋 阅读(123) 评论(0) 推荐(0) 编辑
摘要:问题描述 "LG3237" 题解 问题转化为: 要求将这棵树,满足 结点 x 所有孩子权值相等 结点 x 权值等于所有孩子权值和 将乘法转化为 log 加法 Code 阅读全文
posted @ 2019-11-10 21:11 览遍千秋 阅读(106) 评论(0) 推荐(0) 编辑
摘要:问题描述 "LG4107" 题解 首先,我们可以直接令结点 x 的权值为 c[x]+sonx ,发现将 x,y 合并,相当于增加 c[x]+c[y]1 的重量。 容易想到对于每个结点 x ,贪心的从小到大合并 c[y],yson(x) ,可以获得最大的答案。 $ 阅读全文
posted @ 2019-11-10 20:39 览遍千秋 阅读(141) 评论(0) 推荐(0) 编辑
摘要:问题描述 "LG4556" 题解 对于每一个结点,建立一棵动态开点线段树。 然后自低向上合并线段树。 同时维护整个值域的最大值和最大值位置。 Code 阅读全文
posted @ 2019-11-10 07:10 览遍千秋 阅读(132) 评论(0) 推荐(0) 编辑
摘要:问题描述 "LG CF455C" 题解 首先,题目给出了 m 条边,对这 n 个点, m 条边组成的森林,跑出每棵树的直径,同时使用并查集维护树的连通性。 考虑合并两棵树的情况:设这两棵树的代表元为 u,v ,这棵树的直径有三种来源: u 这棵树的直径 v 这棵树的直径 穿过 阅读全文
posted @ 2019-11-07 21:49 览遍千秋 阅读(209) 评论(0) 推荐(0) 编辑
摘要:问题描述 "LG5536" 题解 两次 dfs 求树的直径。 然后找到树的直径的中点。 然后按照 子树中最深的点深度 自己深度 排序,贪心选取前 k 个。 Code 阅读全文
posted @ 2019-11-07 17:05 览遍千秋 阅读(111) 评论(0) 推荐(0) 编辑
摘要:问题描述 "LG CF1005F" 题解 由题面显然可得,所求即最短路树。 所以跑出最短路树,计数,输出方案即可。 Code 阅读全文
posted @ 2019-11-06 21:43 览遍千秋 阅读(179) 评论(0) 推荐(0) 编辑
摘要:问题描述 "LG1337" 题解 模拟退火模板 记住概率公式: exp(dealtT)×randRANDAMX zzk太欧了,我交了一版没过他来了一下就A了。 Code 阅读全文
posted @ 2019-11-06 10:56 览遍千秋 阅读(130) 评论(0) 推荐(0) 编辑
摘要:问题描述 "CF786B" "LG CF786B" 题解 线段树优化建图 线段树的一个区间结点代表 [l,r] 区间点。 然后建立区间点的时候就在线段树上建边,有效减少点的个数,从而提高时空效率。 "优质题解传送门" Code 阅读全文
posted @ 2019-11-05 21:01 览遍千秋 阅读(110) 评论(0) 推荐(0) 编辑
摘要:问题描述 "CF915E" "LG CF915E" 题解 n109 看上去非常唬人。 但是这种区间操作的题,珂朵莉树随便跑啊。 Code 阅读全文
posted @ 2019-11-03 21:57 览遍千秋 阅读(116) 评论(0) 推荐(0) 编辑
摘要:问题描述 "LG CF343D" 题解 树剖,线段树维护0 1序列 yzhang:用珂朵莉树维护多好 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 览遍千秋 阅读(184) 评论(0) 推荐(0) 编辑
摘要:问题描述 "CF896C" "LG CF896C" 题解 我expect就是T飞,从这里跳下去,也不碰和珂朵莉相关的任何东西。 珂朵莉树真好使。 珂朵莉树模板。 Code cpp include using namespace std; define int long long 阅读全文
posted @ 2019-11-03 17:45 览遍千秋 阅读(187) 评论(0) 推荐(0) 编辑
摘要:问题描述 "LG2495" 题解 虚树 Code 阅读全文
posted @ 2019-11-02 21:29 览遍千秋 阅读(142) 评论(0) 推荐(0) 编辑
摘要:先开坑。 md原题写挂我也真是。。。 100+20+10 白夜 打表大法吼 显然,不在环上的点对答案的贡献是 (kcycle)k1 。 打表得到环上的递推式,矩阵一下乘起来就好了。 cpp include using namespace std; define int long lon 阅读全文
posted @ 2019-11-02 11:01 览遍千秋 阅读(139) 评论(0) 推荐(0) 编辑
摘要:问题描述 "LG1345" 题解 点边转化,最小割,完事。 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 览遍千秋 阅读(127) 评论(0) 推荐(0) 编辑
摘要:问题描述 "LG1344" 题解 我太菜了,我一开始竟然没有看出这是个最小割裸题。。。 两个询问。 第一个询问,直接跑最小割就好了。 第二个询问,建图的时候边权建 1 ,代表割掉这条边需要 1 的代价。 Code cpp include using namespace 阅读全文
posted @ 2019-11-01 21:35 览遍千秋 阅读(103) 评论(0) 推荐(0) 编辑
摘要:问题描述 "POJ1741" 题解 题意是求树上满足两点之间距离 disk 的点对 (x,y) 的数目。 点分治。 Code cpp include include include include using namespace std; template v 阅读全文
posted @ 2019-11-01 15:12 览遍千秋 阅读(88) 评论(0) 推荐(0) 编辑
摘要:写在前面 先开个坑... 之前学过点分治,但是总是感觉打的时候内心莫名的慌,敲完几个函数的定义就开始脑袋一片空白。 所以重学了一下点分治,并写了这篇博客。 看看什么时候把它补完吧。 1 参考资料 找了两篇还不错的博客 https://www.cnblogs.com/bztM 阅读全文
posted @ 2019-11-01 15:04 览遍千秋 阅读(305) 评论(2) 推荐(2) 编辑
摘要:问题描述 "LG SP2713" 题解 分块,区间开根。 如果一块的最大值是 1 ,那么这个块就不用开根了。 如果最大值不是 1 ,直接暴力开就好了。 Code cpp include using namespace std; define int long long 阅读全文
posted @ 2019-11-01 10:19 览遍千秋 阅读(102) 评论(0) 推荐(0) 编辑
摘要:问题描述 [LG-SP1716](https://www.luogu.org/problem/SP1716] 题解 GSS 系列的第三题,在第一题的基础上带单点修改。 第一题题解传送门 在第一题的基础上,增加一个单点修改就完事了。 $\mathrm #include<bits/stdc++.h> u 阅读全文
posted @ 2019-11-01 09:17 览遍千秋 阅读(94) 评论(0) 推荐(0) 编辑
摘要:问题描述 "LG SP1043" 题解 系列第一题。 q 个询问,求 [x,y] 的最大字段和。 线段树,维护 [x,y]lmax,rmax,sum,val ,向上合并即可。 但是注意询问过程中也需要维护这些信息。 Code cpp include usi 阅读全文
posted @ 2019-11-01 09:09 览遍千秋 阅读(143) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示