NOI2020网络同步赛体验记
$Day1$
勤勤恳恳的扣了 114 分,取模错误 wa + 字母打错,fst 成 82 分。。。好难受啊
整整 32 分啊。这如果是联赛,谁担的起呢。
$Day2$
勤勤恳恳的抠了 ?分(对我自己都不确定正确性),民间数据还没出(出了也不测 qvq)
出成绩了
108
【此处应有题解】
来补了。
$D1T1. 美食家$
我想到矩阵快速幂了!写出 $5n$ 个点的转移柿子了!甚至想到预处理 $2^i$ 的矩阵、行向量去乘是 $n^2$ 的了!
但我没写出来。。。好吧,不会就是不会,复杂度是 $O((5n)^3 log T + (5n)^2 log T \times K)$。你别看他有 4e8,人家是 O(能过) 耶= =
upd:考场代码分段乘的时候额外贡献加错位置了= = 我哭
$D1T2. 命运$
$D1T3. 时代的眼泪$
咕咕
$D2T1. 制作菜品$
先将 $d$ 排序。
发现大数据范围里有 $n - 2 \leq m$,部分分 $m = n - 1$ 似乎很有未来。
考虑部分分 $m = n - 1$,$d_1$ 一定是 $< k$ 的,为什么呢?如果 $d_1 \geq k$, 那么 $\sum d_i \geq n times k > (n - 1) times k = m \times k = \sum d_i$,矛盾。每次削掉第一项,$n$ 转化成 $n - 1$,一定能够构造出来。同时 $d_1 + d_n \neq k$,用反证法也可以证明。
考虑 $m \geq n$ 时,$d_n \geq k$,证明方法同上面类似。于是将 $d_n -= k$,就转化成了 $m = n - 1$ 的问题
最后一步!$m = n - 2$ 怎么搞。。可以证明,$m = n - 2$ 有解的充要条件是可以划分为两个 $m = n - 1$ 的子问题。充分性很好证,必要性就比较妙:考虑一个 n 个点的图,菜品视为边,那么最多只有 n - 2 条边,不会连通,此时必然存在至少两个连通块是树的形态——为什么?如果是环,边就不够用了。
实现的话,设 $S$ 是分出来的集合之一,$sz = |S|$, 那么 $\sum\limits_{i \in S} d_i = (sz - 1) \times k$,$\sum\limits_{i \in S} (d_i - k) = -k$,这是个 dp,$f[i, j]$ 表示前 i 个任意取能否使得总和为 j,bitset 维护, $O(\frac{n \times (n \times k)}{w})$
$D2T2. 超现实树$
这题好 AT 的样子,结果是道结论题(脑子不好 死也想不出啊。。
“几乎完备”这种关系可以传递。太妙了吧!!!!!!!!!
$D2T3. 翻修道路$
咕咕