03 2023 档案
摘要:$\text{QOJ 5458. Shortest Path Query}$ 首先想到每次询问在 $\text{DAG}$ 上 $dp$ 一次求最短路 这是没法优化的 考虑预处理到 $i$ 可能经过的黑白边数 即预处理 $f_{i,j}$ 表示经过 $j$ 条黑边到 $i$ 所需经过的最少白边数量
阅读全文
摘要:$\text{Solution}$ 推式子 有答案为 $$ \begin{aligned} Ans &=\sum_{i=0}^n i^k\dbinom n i (\frac 1 m)^i (1-\frac 1 m)^{n-i} \end{aligned} $$ $i$ 的上限为 $n$,交换求和顺序
阅读全文
摘要:$\text{Solution}$ 关键限制是 $2.A_i\not= A_j$ 这也是上午模拟赛 $T3$ 导致我暴力不会的东西 考虑更一般的,连边 $(i,j)$,表示 $a_i=a_j$ 的限制,那么本题考虑这样的一个完全图 那么枚举选哪些边,记为集合 $S$,于是答案就是 $\sum_S (
阅读全文
摘要:$\text{Solution}$ 建出 ACAM 后利用 fail 树就可以确定子串关系了,如果建成有向图 然后看问题,考虑最长反链等于最小链覆盖,那么就是求一个可重路径覆盖问题 Floyd 传递闭包后变成不可重路径覆盖,拆点二分图就有最小路径覆盖等于总点数减最大匹配 考虑构造方案,本质上是个传递
阅读全文
摘要:$\text{Day1}$ 三个 $998244353$ 直接惊出一身汗 然后冷静下来写暴力 $T1$ 写完暴力扔了个判行与列和相不相等的假东西,随机都不想随机了,随意构造一下就能卡,只能过 $40pts$ 结果出来过了?!感谢数据 正解是随机一个行向量 $\vec v$,判断 $\vec v \t
阅读全文
摘要:$\text{Code}$ #include <bits/stdc++.h> using namespace std; template<typename Tp> void read(Tp &x) { x = 0; char ch = getchar(); int f = 0; for(; !isd
阅读全文
摘要:$\text{Solution}$ 有关斜率优化的强势套娃题,感觉套出了巅峰 ~~我整整写了 5 个小时、、、~~ 简单 $dp$ $$ f_{i,j} = f_{i-1,k-1} + (j-k+1)\max_{l=k}^j a_l $$ 固定这个最大值,于是原序列可用笛卡尔树结构表示 考虑左侧对
阅读全文
摘要:$\text{Solution}$ 很好的想法是用平面图欧拉定理 $E=V+F-2$ 那么就要解决的问题是环内的边数与面数 科技的使用:平面图转对偶图 建图过程大概就是将每条无向边拆成两条双向边,考虑找出所有按逆时针方向围成的最小面 那么这个只需要考虑每条的下一条边是谁,极角排序即可 把面当点,点的
阅读全文