cunzai_zsy0531

关注我
摘要: 心理阴影题。考试时写了奇怪的线段树分治,在每个线段树节点上维护单调栈在栈内二分…… 这题注意到两维分别是 \(x,cnt_x\),应该对 \(cnt\) 比较敏感的是它的自然根号性质,由于 \(\sum_{cnt_x}=n\),所以实际上 \(cnt_x\) 的种类只有 \(O(\sqrt n)\) 阅读全文
posted @ 2022-05-30 11:23 cunzai_zsy0531 阅读(84) 评论(0) 推荐(0) 编辑
摘要: 首先考虑建出 dfs 树,如果一个点的深度 \(\geq \frac{n}{k}\),那么直接输出这个点到根的路径即可。 如果没有点深度 \(\geq \frac{n}{k}\),可以证明这棵树一定有不少于 \(k\) 个叶子(考虑反证法,如果叶子个数少于 \(k\),那么点数最多也不到 \(k\c 阅读全文
posted @ 2022-05-30 11:19 cunzai_zsy0531 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 考虑问两次,一次 \([1,n]\),一次 \([2,n]\),能够得到什么信息:长度为 \(1\) 的串,第一次询问多出来的串就是 \(s_1\);同理,长度为 \(2\) 的串多出来的两个字符,去掉 \(s_1\) 就是 \(s_2\);依此类推之后,发现可以直接求出所有位置的字符,并且字串总长 阅读全文
posted @ 2022-05-30 11:18 cunzai_zsy0531 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 首先考虑枚举矩形较小的边,这样每种数选的个数就是确定的了,用它去更新答案。考虑现在已经知道了答案矩形的两边长,那么如何构造出这个矩形:出现次数从大到小往里放,每次沿着一个斜线放下去,如果顶到了边界就换到下一个斜线,这样一定不会出现一个元素出现在同一行或同一列。 点击查看代码 const int N= 阅读全文
posted @ 2022-05-30 09:18 cunzai_zsy0531 阅读(11) 评论(0) 推荐(0) 编辑