摘要: 题目链接 *倍增一般解决的问题是找 111100000 最右边的 1 或找 000001111 最右边的 0。 发现题意拍到序列上即给定若干条线段,若干次询问覆盖区间 \([l,r]\) 最少需要多少条线段。 对于序列上的问题,可以通过倍增优化贪心令 \(f[i][j]\) 为从点 \(i\) 做 阅读全文
posted @ 2021-09-06 16:47 Themaxmaxmax 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 题目链接 和 P5024 [NOIP2018 提高组] 保卫王国 类似,都是钦定路径端点状态的树上路径处理问题,一般思想即把询问点放在虚数上倍增处理。 考虑一个双射:给定一棵树,有两种状态,对应两种不同的边权组合,可以通过一定的花费随意切换状态,求从点 \(x\) 状态 \(a\) 游走到 \(y\ 阅读全文
posted @ 2021-09-06 16:23 Themaxmaxmax 阅读(34) 评论(0) 推荐(0) 编辑
摘要: 题目链接 *\(T(u)\) 表示以 \(u\) 为根的子树,定义一对祖先与后代的 \(pre(u,v)\) 为 路径 \(u\to v\) 经过的第二个点。 对于一个询问 \((x,y,a,b),a,b\in\{0,1\}\) ,其中 \(dep(x) \ge dep(y)\) 考虑将树 \(T\ 阅读全文
posted @ 2021-09-06 12:50 Themaxmaxmax 阅读(61) 评论(0) 推荐(0) 编辑