05 2021 档案

摘要:这道题首先需要跑一遍边双连通分量,然后剩下来的就是一颗树,每个点有其点权,询问对于树上一条 \((u,v)\) 的简单路径,时候经过的点的点权和不为 \(0\)。 其他题解基本都是跑 \(LCA\),去求路径的权值,其实这并没有必要,因为两点间的路径点权和为 \(0\) 的是一个连通块,若询问的 \ 阅读全文
posted @ 2021-05-27 17:31 zhaohaikun 阅读(121) 评论(0) 推荐(0)
摘要:这题我们可以想到将每个数字变成 \(d\) 进制的数,消灭数可以看成是 \(d\) 进制下原数是这个数 \(d\) 进制下的一段前缀。 于是可以使用 \(Trie\) 来实现这个过程,于是可以先将这 \(m\) 个原数 insert,然后再去查询。 一个数有多个前缀,我们可以选择其中最短的一个,因为 阅读全文
posted @ 2021-05-20 16:45 zhaohaikun 阅读(94) 评论(0) 推荐(0)
摘要:这题一眼看出了可以用主席树维护暴力在线的做法,时间复杂度 \(O(n \log^2n)\)。方法类比宝石。 后来在想出了一个 \(O(n \log n)\) 的做法,不需要任何高级数据结构。 这题用主席树的话,会发现所有查询都是已知的,不会有任何改变,且总查询次数是在 \(O(m)\) 级别的。 我 阅读全文
posted @ 2021-05-19 17:38 zhaohaikun 阅读(87) 评论(0) 推荐(0)