Loading

上一页 1 ··· 4 5 6 7 8 9 下一页
摘要: 注意到可以直接 dfs 求出原图的一个生成树。除了树边以外,剩下的边看成区间加,给每个树边定义一个"覆盖次数",如果 \(x,y\) 在树上的路径之间有覆盖次数为 \(0\) 的树边,那么 \((x,y)\) 就是非法的。 每次查询的时候树剖暴力区间加和撤销,点拿出来建虚树然后 dp 即可。 我好像 阅读全文
posted @ 2021-09-05 19:07 Qiuly 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 注意到最优的顺序和 \(c\) 无关,只和 \(\frac{p_i}{t_i}\) 有关。 接下来考虑 \(c\),直接列限制式的话不太好算,考虑二分 \(c\),然后直接处理即可。细节较多。 代码:Submission #127900020 - Codeforces 阅读全文
posted @ 2021-09-05 18:08 Qiuly 阅读(49) 评论(0) 推荐(0) 编辑
摘要: 注意到如果 $v$ 对 $f(u,G)$ 产生贡献,那么 $v\leq u$ 且 $v$ 能经过 $[v,n]$ 中的点到 $u$,$u$ 也能经过 $[v,n]$ 中的点到 $v$ 。令 $g_{u,v}$ 表示 $u$ 能经过 $[\min (u,v),n]$ 中的点到 $v$,注意到 $h(G)$ 为 $\sum\limits_{u}\sum\limits_{v\leq u}[g_{u,v}\and g_{v,u}]$ 。 为了解决原问题,重新 阅读全文
posted @ 2021-09-05 12:58 Qiuly 阅读(68) 评论(0) 推荐(0) 编辑
摘要: 因为一条路径走偶数次是没用的,只考虑树的情况的话,\(0\) 走的路径是一定的,简单判断一下即可。 由于操作可逆,将 \(0\) 所在目标节点移做根,先把 \(0\) 移过去。考虑新增一条边能干啥:对于所在的环,​和 \(0\) 最近的节点不动,其他的节点按照顺时针或者逆时针不断轮换。 这样的情况只 阅读全文
posted @ 2021-09-04 23:34 Qiuly 阅读(56) 评论(0) 推荐(0) 编辑
摘要: 考虑如果串 \(i\) 包含了串 \(j\),就连边 \(i\rightarrow j\),此时题目要求的是找到尽可能多的点,满足两两不可以到达。 这里构造最长反链即可,复杂度 \(O(n^3)\) 。现在考虑建图,注意到按照上述方法建的图就满足要求了,不必做传递闭包后再构造最长反链,但同时也没有很 阅读全文
posted @ 2021-09-03 23:43 Qiuly 阅读(86) 评论(0) 推荐(0) 编辑
摘要: 本题的题意:给出一个 DAG,求最长反链。 Dilworth 定理:偏序集上最长反链的长度等于最小链覆盖中链的数量。 先做一遍传递闭包,使得 DAG 中 \(x<y\) 的定义"从 \(x\) 向 \(y\) 有连边"变为了"从 \(x\) 出发能够到达 \(y\)“,此时就可以直接套用 Dilwo 阅读全文
posted @ 2021-09-03 20:29 Qiuly 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 超水的 d1f 。暂时不知道长度限制是 $\lfloor\frac{d}{2}\rfloor$ 有什么特殊意义。 经典套路题,将所有长为 $\lfloor\frac{d}{2}\rfloor$ 的 $s$ 子串都塞入 aho-corasick automaton,然后数位 dp 。 容斥掉下界,令 $f(i,j,0/1,0/1)$ 表示从高到低考虑到第 $i$ 位,在 aho-corasick automaton 的 $j$ 号点,有没有 阅读全文
posted @ 2021-09-03 15:22 Qiuly 阅读(39) 评论(0) 推荐(0) 编辑
摘要: 超水的 d1e 。 套路建操作树,考虑一组 \(a,b,c,d,e\),不难想到可以令 \(f(u,0/1)\) 表示 \(u\) 字数内套值 \(a,b,c,d\) 后求出来的结果为 \(0/1\) 的方案数。 可以发现 \(2^{16}\times 500\) 是一个很对的复杂度的样子,那么同时 阅读全文
posted @ 2021-09-03 14:44 Qiuly 阅读(40) 评论(0) 推荐(0) 编辑
摘要: 设有用质数集合为 $P$,$P$ 中有质数 $p$ 的充要条件为 $\exists i,p|a_ib_i$,可以发现 $|P|$ 是 $O(w(\max a_i,b_i)n)$ 级别。 接下来用 $p_{1},p_{2},\cdots,p_{m=|P|}$ 来表示 $P$ 中的质数。考虑令 $c_{i,t}$ 表示最大的 $k$ 使得 $p_t^k|a_i$,同理设 $d_{i,t}$ 表示最大的 $k$ 使得 $p_t^k|b_i$ 。 注意到对于 $p_t$,如果所有的 $i$ 都有 $d_{i,t}=0$ 那么这一个质数就是摆设,如果 阅读全文
posted @ 2021-09-03 13:37 Qiuly 阅读(64) 评论(0) 推荐(0) 编辑
摘要: 找带权重心的常见套路无非是从根节点开始考虑重心能不能向儿子移动,然后用点分治优化。唯一要解决的就是怎么通过当前点的权值快速算出儿子节点的权值。 考虑令 $f(x)$ 表示沿边 $u\rightarrow v$ 移动了 $x$ 长度后的权值(其中 $s_i$ 表示 $\mathrm{dist}(i,x)$) 阅读全文
posted @ 2021-09-03 11:33 Qiuly 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 距离最远点可以想到找直径,根据"天生的胆小鬼"给我们的经验,可以发现这题找到直径中点就会很好办。找到直径中点后,提为根,此时对于任意非根节点 \(u\),其权值一定小于父节点权值。 每次询问枚举连通块顶点,然后启发式合并(大概叫 dsu on tree 吧)求子树内权值满足要求的点数。当然也可以考虑 阅读全文
posted @ 2021-09-02 22:47 Qiuly 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 首先可以发现玩的序列 $(a_i,b_i)$:$a_i$ 一定是 $0,1,\cdots,n-1,0,1$ 循环往复,$b_i$ 一定是 $0,1,\cdots,m-1,0,1$ 循环往复。考虑令 $g=\gcd (n,m),n'=\frac{n}{g},m'=\frac{m}{g}$,将 $[0,n)$ 拆为 $n'$ 段区间,$[0,m)$ 拆为 $m'$ 段区间,考虑区间之间的匹配。 注意到因为 $n'\perp m'$,所以区间序列的周期的长度为 $n'm'$:恰好为不同的区间匹配数,意味着左边的每个 阅读全文
posted @ 2021-09-02 22:03 Qiuly 阅读(68) 评论(0) 推荐(0) 编辑
摘要: 常见套路正难则反,考虑从后往前做。 可以发现最后剩下 \(O(m)\) 个区间,每个区间有一个"被删除的时间",如果至始至终都没被删除的区间,定义其"被删除的时间"为 \(m+1\) 。 将这些区间丢到线段树上,再从线段树上将这些区间扒下来,此时每个区间长度一定是 \(2^k\),接下来考虑连边。 阅读全文
posted @ 2021-09-02 16:12 Qiuly 阅读(152) 评论(0) 推荐(1) 编辑
摘要: 定义质数 $i$ 的数链(集合)$S_{i}=\{1,2,\cdots,n\}\bigcap\{it,t\in\Z\}$ 。 那么对于 $p$ 来说,将 $i$ 的 $S_i$ 当作下标集合,满足 $\gcd(p_a,p_b),\{a,b\}\subseteq S_i$ 。假设这些 $p_a,p_b$ 均为质数 $t$ 的倍数,那么相当于 $S_i$ 作下标集合时,在 $p$ 中对应的是 $S_t$,称用 $i$ 替换了 $t$,容易发 阅读全文
posted @ 2021-09-02 12:47 Qiuly 阅读(142) 评论(2) 推荐(1) 编辑
摘要: 首先竞赛图缩点是一条链状 DAG,拥有唯一拓扑序,如果能知道缩点后的结果就很容易得到答案了。 首先考虑找到一条长度为 \(n\),包含 \([0,n-1]\) 所有点的路径。注意到 \(a\rightarrow b\) 意味着 \(a\) 缩点后所属的大点一定不在 \(b\) 所属的大点之后,所以最 阅读全文
posted @ 2021-09-02 09:56 Qiuly 阅读(76) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 下一页