01 2022 档案

摘要:前言 这太难了啦~但是冬令营讲这个东西了,提前开坑。前置芝士 Define #define ls tr[x].ch[0] #define rs tr[x].ch[1] struct Tree{int ch[2],val,fa,rev,xv;}tr[MAXN]; LCT? LCT 是怎么超越一般的树剖 阅读全文
posted @ 2022-01-25 19:34 ZCETHAN 阅读(73) 评论(0) 推荐(1) 编辑
摘要:前言 以前的学弟都学了就我还不会,只能爬了。。。 CDQ 分治 **这是一种思想!**这是一种思想!这是一种思想! CDQ 分治是非常优美的过程。当我们考虑序列中的数对计数等问题的时候可以想到用 CDQ 分治。 其过程是: 掏出一个序列; 从中间剪开; 答案分成了 3 类,一是只在左边的,二 阅读全文
posted @ 2022-01-23 21:40 ZCETHAN 阅读(53) 评论(0) 推荐(1) 编辑
摘要:前言 为了测试你板子的正确性,可以交到 Aizu 上去。我的代码都是 Shared 的。 记得开 double!记得开 double!记得开 double!记得开 double!记得开 double!记得开 double!记得开 double!记得开 double!记得开 double!记得开 do 阅读全文
posted @ 2022-01-23 13:19 ZCETHAN 阅读(116) 评论(0) 推荐(2) 编辑
摘要:传送门 Solution 题意已经很清楚了。 考虑这样一个三元组的位置,首先是 b 要选在非 0 位,a,c 分别要在它的左右两边。那么有一个很明显的答案上界就是 n02,其中 n0 表示序列中 0 的个数。 然后来考虑这个问题 阅读全文
posted @ 2022-01-22 09:38 ZCETHAN 阅读(56) 评论(0) 推荐(0) 编辑
摘要:前言 又是每个人都会的算法,我不会只能爬去学~ 点分治 点分治通常用来解决树上路径统计问题。 其实点分治的想法很简单就是:我们考虑一棵有根的树,显然可以将其路径分成两类,一类是经过根的,一类是不经过根的。据此,可以得到一个牛逼想法就是:对于当前的根节点,直接求出它到子树内各个点的信息并统计,然后合并 阅读全文
posted @ 2022-01-20 21:02 ZCETHAN 阅读(96) 评论(0) 推荐(2) 编辑

点击右上角即可分享
微信分享提示
主题色彩