3.18模拟赛总结

Posted Flame♡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3.18模拟赛总结相关的知识,希望对你有一定的参考价值。

文章真的有那么多人看么…看着阅读量有点莫名不胜惶恐,毕竟也没有人互动之类的XD

今天的题还是比较高知识门槛的吧

据说不能回家了qwq 有点不乐呢qwq

时间安排

7.30-8.30

先看了三道题 直观感觉

1数论 2.不知道,3.主席树大数据结构

感觉有点舒服,看到大数据结构莫名感觉一阵舒适,T3推了推感觉不急着写,准备先推推T1

8.30-9.10

写了写T1,还以为是正解后来发现不对(造数据两档部分分拍了一下),人麻了就跑路了

9.10-10.10

到了让人开心的数据结构环节! 先写了暴力,然后糊了两棵主席树,然后造了个数据验了验,发现大样例过不去有点慌,才想起来应该是爆栈问题,奈何我忘了调大栈的指令)

10.10-11.30

盯了一下T2,然后先写60后推优化,最后造了个数据两档拍了一下

题目分析

T1

很显然是贡献组合数次

最开始 愚蠢的我以为只要质因数分解然后随便写写就对了

但是复杂度过不去(而且质因数分解还写锅了qwq虽然最后查出来了吧)

打了两档暴力

T2

每一种连接方案的答案就是竞赛图的强连通分量数

所以dp出 f f f, g g g 分别表示 n n n 个点竞赛图的数目, n n n 个点的竞赛图且是一个强连通图的数

然后dp p p p 表示确定了 i i i个点形成的图的方案数

p [ i + j ] = ∑ p [ i ] ∗ g [ j ] ∗ C ( n − i , j ) p[i+j]=\\sum p[i]*g[j]*C(n-i,j) p[i+j]=p[i]g[j]C(ni,j)

先考虑二维 p [ i , j ] p [i,j] p[i,j] 选了 i i i 个点形成 j j j 个联通块的方案数

最后累加 a n s ans ans ,然后除个 2 ( n − 1 ) n / 2 2^(n-1)n/2 2(n1)n/2 就可以了

怎么优化呢?

考虑分别维护 p p p , r e s res res

p p p 的维护过程不变

r e s [ i + j ] = r e s [ i ] ∗ g [ j ] ∗ C ( n − i , j ) + p [ i ] ∗ g [ j ] ∗ C ( n − i , j ) res[i+j]=res[i]*g[j]*C(n-i,j)+p[i]*g[j]*C(n-i,j) res[i+j]=res[i]g[j]C(ni,j)+p[i]g[j]C(ni,j)

答案就是 r e s [ n ] res[n] res[n]

T3

暴力st表查lca,硬跳+桶维护就可以啦!

链的情况,当然是可爱的主席树!

考虑维护一下每个点上一次出现的位置

再搞个主席树维护一下某个数出现的次数

就做完辣!

离谱没判a==b

upstate

T1

就算脑到了crt也不知道怎么合并,估计题解的crt就是扩展Lucas吧(挠头)

想到了质因数分解,差距在于对于每个组合数递推去求,以及对于质因数分解+欧拉定理求逆元的混合使用

T2

我觉得我口胡的比题解直观(跑)

T3

树上莫队 属于是输的心服口服qwq

以上是关于3.18模拟赛总结的主要内容,如果未能解决你的问题,请参考以下文章

7.15模拟赛总结

7.25模拟赛总结

7.25模拟赛总结

7.15模拟赛总结

7.17模拟赛总结

7.17模拟赛总结