2023.3.6 省选模拟赛总结

1.时间安排

7:30~8:30

T1:与逆序对相关的计数,需要记权值和,\(n\) 范围很小也许是状压,但是 \(m\) 与模数同级可能连组合数都不好求。

T2:和T1很类似的数据范围,\(m\) 更是到了逆天的 \(1e18\),见过类似的题[ABC288Ex] A Nameless Counting Problem,但不会做,而且数据范围截然不同。

T3:莫反题,但是涉及到了除数函数,不擅长。

把T1T2暴力写了,觉得都太逆天了,就没继续想。

8:30~12:00

先把T3的 \(nlogn\) 基础莫反写了,然后进行了漫长的推式子,终于在11点推出来了线性筛的式子,写完没精力上杜教筛了。

result:

T1:10 T2:15 T3:15(25,忘改数组大小RE)

2.总结

三个逆天数数……

T1:

按套路从小到大放数,用二进制状态表示比 \(i\) 小的数放的集合,判断状态合法转移即可做到 \(O(m*3^n)\)

按套路拉格朗日差值,方案数是关于 \(m\)\(n\) 次多项式,方案的权值和是关于 \(m\)\(n+1\) 次多项式,直接拉插就可以做到 \(n*3^n\)

可以提前把所有合法的状态转移预处理出来,是跑不满 \(n*3^n\) 的,足够通过。

不知道该写什么。

我也不知道给时间留够了能不能写出来,但是三题都是高强度计数怎么让人冷静下来思考……

T2:

假设序列单调递增,构造序列 \(b\),若 \(a_i=a_{i+1)\) ,则 \(b_i=0\),反之 \(b_i=1\)

那么每次新增一位时一定是前缀一段0后缀一段1,根据目标这一位是否是1决定1的个数的奇偶性,状态是容易合并的。

这个过程可以用矩乘优化,复杂度 \(O(num*(2^n)^2*logm+(2^n)^3*logm)\)

按套路压缩状态,长度相等的连续段的数量相同的状态本质相同,都可以被同一个01串转换到相同的压缩状态,打表得到只有 \(231\) 个本质不同的状态。

复杂度 \(O(num*231^2*logm+231^3*logm)\)

感想同T1

T3:

考场上莫反到了求 \(\sum_{D=1}^{n}(\lfloor \frac{n}{D} \rfloor)^2\sum_{d|D}^{D}d*\phi(\frac{D}{d})\)

上面的式子主要是为了筛积性函数方便。

按杜教筛定义式给 \(\phi * id\) 补上一个 \(I\),有 \((\phi * id * I)(n)=n * d(n)\)

那么就需要求 \(\sum_{i=1}^{n}i * d(i)\)

\(\sum_{i=1}^{n}i * d(i)=\sum_{i=1}^{n}i\sum_{j|i}^{i}1=\sum_{i=1}^n i * \lfloor \frac{n}{i} \rfloor\)

那么直接上杜教筛,复杂度 \(O(n^{\frac{2}{3}})\)

考试时候的nt(脑瘫,逆天均可)操作:

典中典之化简一圈化道原形式。

化简了好久才想到拆除数函数定义式。

当我写下 \((id * id)(n)=n * d(n)\) 时,小丑的面具自动跑到我的脸上。

典中典之不会筛除了 \(\phi,\mu\) 以外的积性函数。

典中典之筛的时候取模除法用逆元线性筛带log。

典中典之记录最小质因子的 \(k\) 次幂取模。

典中典之忘了降幂公式是模 \(\phi(mod-1)\)

(基本上把莫反和数论常见错误犯了一遍……)

posted @ 2023-03-06 19:18  Displace  阅读(14)  评论(0)    收藏  举报