上一页 1 ··· 26 27 28 29 30 31 32 33 34 ··· 51 下一页
摘要: 题意 给定一颗树,树有点权。多次询问,每次询问以 uuu 为根的子树中第 kkk 小的点权的点编号,点权互不相同。 解法 要求树上询问问题,可以想到树剖套各种数据结构,但是注意到这道题只需要求子树的问题,所以考虑用 dfs 序和主席树解决这个问题。 主席树其实就是【模板】可持久化线段树 2,dfs 阅读全文
posted @ 2022-04-01 20:20 HappyBobb 阅读(14) 评论(0) 推荐(0)
摘要: 考试考到这个题,101010 分钟写了半天没写对,放弃了,赛后 555 分钟不到切了。发现 dp[N][3] 写成了 dp[3][N]。 显然是一道 DP 裸题,设 dpi,j(j∈{0,1,2})dp_{i,j}(j \in {\{0,1,2\}})dpi,j​(j∈{0,1,2}) 表示第 ii 阅读全文
posted @ 2022-03-28 16:40 HappyBobb 阅读(12) 评论(0) 推荐(0)
摘要: 模拟退火练习题。 考虑模拟退火,显然每次随机两个点并交换这两个点,不过注意要判断交换这两个点后序列是否仍然成立,也就是对于最后一轮是否交换后仍然成立,然后计算整个序列的贡献即可。 由于是模拟退火,所以显然考虑卡时,代码: #include <iostream> #include <cstdio> # 阅读全文
posted @ 2022-03-24 19:41 HappyBobb 阅读(13) 评论(0) 推荐(0)
摘要: 要是赛时对 pb_ds 有掌握就 200200200 分了! 提供一个平衡树写法,虽然平衡树我并不会写,但是 pbds 内置有平衡树啊,所以我们考虑用内置的平衡树写,注意要用 rb_tree_tag 而非 splay_tree_tag,内置的 Splay 很慢,开了 O2 还是超时,而内置红黑树不开 阅读全文
posted @ 2022-03-21 16:40 HappyBobb 阅读(20) 评论(0) 推荐(0)
摘要: 看到了第一篇题解,我懂了随机化的艺术。 确实,这种区间众数用随机化的错误概率很小,并且也快,那我就是用这种方法的。 显然我们知道区间众数是区间中某个数出现次数 >>> 区间的一半,那么我们考虑每一次随机抽不中的可能是 12\frac{1}{2}21​,选 kkk 次抽不中的概率是 12k\frac{ 阅读全文
posted @ 2022-03-20 20:32 HappyBobb 阅读(17) 评论(0) 推荐(0)
摘要: 题意 根据题意模拟排序,自己看吧。 解法 蓝题模拟,确实很容易。 搞个 map 记录每个人得分以及每个人的排名出现次数,cmp 函数很容易写,非常容易。 代码: #include <iostream> #include <cstdio> #include <algorithm> #include < 阅读全文
posted @ 2022-03-20 18:09 HappyBobb 阅读(14) 评论(0) 推荐(0)
摘要: 题意 给定一个二维平面,其中有多个点 (xi,yi)(x_i, y_i)(xi​,yi​),对于每个点 (xi,yi)(x_i, y_i)(xi​,yi​) 都有一个权值 pip_ipi​。给定多组询问,每次询问点对 (x1,y1)(x_1, y_1)(x1​,y1​) 和点对 (x2,y2)(x_ 阅读全文
posted @ 2022-03-18 18:01 HappyBobb 阅读(16) 评论(0) 推荐(0)
摘要: 题意 给定一个序列 aaa,支持两种操作: 求区间 al,al+1,⋯ ,ara_l, a_{l+1}, \cdots, a_ral​,al+1​,⋯,ar​ 中严格小于 vvv 的数的个数。 单点修改。 解法 块内二分模板题。 考虑每一个块维护一个有序的 vector 或者其他容器,块内查询用 l 阅读全文
posted @ 2022-03-17 18:48 HappyBobb 阅读(19) 评论(0) 推荐(0)
摘要: 随便搞,设一开始等式 a+b=ca+b=ca+b=c,显然 ∣a+b−c∣=2\left| a + b - c \right| = 2∣a+b−c∣=2 时有解,然后判断是 c−(a+b)=2c-(a+b)=2c−(a+b)=2 还是 (a+b)−c=2(a+b)-c=2(a+b)−c=2,模拟即可 阅读全文
posted @ 2022-03-16 21:50 HappyBobb 阅读(13) 评论(0) 推荐(0)
摘要: 首先,这里提供的代码可能因为评测机波动而导致无法在不开 O2 下通过,但是开了 O2 后亲测不会出现问题。 现在步入正题。 很多人用了珂朵莉树,但是这题我给大家带来线段树套 bitset 的解法,这是以前的题解没有的。 事实上就是线段树每个点开一个 bitset 维护这个区间中出现了哪些数,那么显然 阅读全文
posted @ 2022-03-16 19:00 HappyBobb 阅读(28) 评论(0) 推荐(0)
上一页 1 ··· 26 27 28 29 30 31 32 33 34 ··· 51 下一页