Solution Set -「LOCAL」冲刺省选 Round XXI
\(\mathscr{Summary}\)
省选几个小时啊,怎么模拟赛只打三个小时啊。/kk
时间安排较为合理,没有出现严重的因思考时间过少引起的丢分。
A 题比较可惜,二分 + 点分治大概想了一下就叉掉了,再后来就没再想起二分。骗分的时候 Manacher 又写假了,笑死,字符一定要调整成 ^|a|a|a|a| 的形式,前后的 | 都不能少。
B 题要是出在所谓“Burnside 算法练习题”里,估计还有挣扎的余地,Burnside 相关的东西确实不熟悉,依靠并不扎实的线代推了一会儿果断暴力 \(16\text{pts}\),问题不大。
C 题比较舒服,从比题解不知道简单多少的角度猜想并证明了关键结论,由于 Min_25 筛忘得很彻底,而且暴力 \(80\text{pts}\) 非常舒适,所以线性筛写了就走,问题不大。
表现中规中矩叭。
\(\mathscr{Solutions}\)
Contest link. (private)
\(\mathscr{A}-\) 我醉
给定一棵含 \(n\) 个结点的边带权的树,求树上最长回文路径长度。 \(n\le10^5\)。
分奇数偶数情况分别二分,现考虑检验是否存在长度为 \(L\) 的回文路径。点分治,从分治中心扩展,用长度 \(\ge\lceil\frac{L}2\rceil\) 的一侧路径更新答案。现在问题形如判断 AxBC 是否是回文(其中 \(x\) 指分治中心结点,不是字符;\(|A|=|C|\)),对 \(A\) 维护 hash 桶,对 \(BC\) 动态更新前缀的正向 hash 和反向 hash 即可 \(\mathcal O(1)\) 判断(假定桶为 \(\mathcal O(1)\))。最终复杂度为 \(\mathcal O(n\log^2 n)\),巨大卡常。
值得一提的乱搞:拆边使得回文中心在点上,从每个点 BFS,保证每个队列里的点都有与之构成回文的点。虽然在所有字符一样等平凡的情况就会 \(\mathcal O(n^2)\),但这种不难写、迎合某竞赛组织数据水、不绑点的尿性的暴力还是有意义的。
\(\mathscr{B}-\) 梧桐依旧
给定 \(n\) 和素数 \(p\),求在模 \(p\) 意义下,有多少 \(n\times n\) 的矩阵对 \((A,B)\) 满足 \(\det B\not=0,A=BA\)。答案模 \(998244353\)。 \(n\le3\times10^7\)。
第一步转化不太显然:\(A\) 可以视作变换 \(B\) 下的不动点,继而引入 Burnside 引理:
\]
可以验证所有可能的 \(B\) 构成群。套用公式,我们只需要求出
\]
对于 \(|G|\),即 \(n\) 维满秩矩阵的数量。依次枚举列向量,当前列向量的限制有且仅有:不落在已有列向量张成的空间内。而 \(k\) 个线性无关向量张成的空间大小显然是 \(p^k\),因此
\]
对于 \(|X/G|\),即所有 \(A\) 在行变换意义下的等价类数量。分 \(\operatorname{rank} A\) 讨论,设 \(\operatorname{rank} A=k\),可以钦定 \(A\) 的前 \(k\) 个行向量构成 \(A\) 的行空间的基,取它们构成 \(k\times n\) 的矩阵 \(A'\)。枚举 \(k\times k\) 的行变换 \(B'\),那么可重集 \(\{B'A'\}\) 中,每个 \(A'\) 恰出现 \(|\{B'\}|\) 次,继而可知每个等价类的大小都是 \(|\{B'\}|\),所以
\]
最终有
\]
\(\mathcal O(n)\) 求所有分母的逆元,最终复杂度 \(\mathcal O(n)\)。
\(\mathscr{C}-\)卿且去
给定 \(n\)。令 \(f(S)\) 表示在集合 \(S\) 中最多能选出多少个不存在整倍数关系的数。求
\]
答案对 \(998244353\) 取模。 \(n\le10^{10}\)。
注意和式中的 \(f\) 的参数集合 \(T\) 满足:若 \(x\in T,2x\le n\),则 \(2x\in T\)。因此可以猜测,\(f(T)\) 的值为 \(|\{x\in T\mid x>\lfloor\frac{n}{2}\rfloor\}|\)。通过说明对于任意选取的集合 \(X\),若有 \(x\in X,x\le\lfloor\frac{n}{2}\rfloor\),那么取出最大的满足条件的 \(x\),都有 \((X\setminus\{x\})\cup\{2x\}\) 成立,即可证明。
因此,我们只关心 \((n/2,n]\) 内的数在多少个 \(S\) 中出现。记 \(\omega(n)\) 表示 \(n\) 的素因子数量,\(\pi(n)\) 表示不超过 \(n\) 的素数数量,那么答案为
\mathcal R &= \sum_{i=n/2+1}^n2^{\pi(n)}-2^{\pi(n)-\omega(i)}\\
&= 2^{\pi(n)}\left[(n-n/2)-\sum_{i=n/2+1}^n2^{-\omega(i)}\right].
\end{aligned}
\]
\(f(n)=2^{-\omega(n)}\) 显然积性,所以其前缀和可以与 \(\pi(n)\) 一并由 Min_25 筛求出来。复杂度 \(\mathcal O\left(\frac{n^{3/4}}{\log n}\right)\)。
你(我)Min_25 忘干净啦?怪不得只有 \(80\text{pts}\)。你应当赎罪。
Solution Set -「LOCAL」冲刺省选 Round XXI的更多相关文章
- Solution Set -「LOCAL」冲刺省选 Round XXV
\(\mathscr{Summary}\) 读错题了读错题了 B 题差点没做出来真的太吓人了. 逆序开题,C 题直接冲一发暴力最大权闭合子图居然过了.A 题确实一下子没想到用"可能的 ...
- Solution Set -「LOCAL」冲刺省选 Round XXIV
\(\mathscr{Summary}\) 名副其实的 trash round,希望以后没有了. A 题算好,确实一个比较关键的简化状态的点没想到,所以只拿了暴力(不考虑 \(\mathcal ...
- Solution Set -「LOCAL」冲刺省选 Round XXIII
\(\mathscr{Summary}\) 有一说一,虽然我炸了,但这场锻炼心态的效果真的好.部分分聊胜于无,区分度一题制胜,可谓针对性强的好题. A 题,相对性签到题.这个建图确实巧妙,多见 ...
- Solution Set -「LOCAL」冲刺省选 Round XXII
\(\mathscr{Summary}\) 和出题人很有缘分但是没有珍惜.jpg A 题有一个显然的二维偏序斜率式,以及显然的 CDQ 套李超树 \(\mathcal O(n\log^2n)\ ...
- Solution -「LOCAL」过河
\(\mathcal{Description}\) 一段坐标轴 \([0,L]\),从 \(0\) 出发,每次可以 \(+a\) 或 \(-b\),但不能越出 \([0,L]\).求可达的整点数. ...
- Solution -「LOCAL」画画图
\(\mathcal{Description}\) OurTeam. 给定一棵 \(n\) 个点的树形随机的带边权树,求所有含奇数条边的路径中位数之和.树形生成方式为随机取不连通两点连边直到全 ...
- Solution -「LOCAL」充电
\(\mathcal{Description}\) 给定 \(n,m,p\),求序列 \(\{a_n\}\) 的数量,满足 \((\forall i\in[1,n])(a_i\in[1,m])\l ...
- Solution -「LOCAL」二进制的世界
\(\mathcal{Description}\) OurOJ. 给定序列 \(\{a_n\}\) 和一个二元运算 \(\operatorname{op}\in\{\operatorname{ ...
- Solution -「LOCAL」大括号树
\(\mathcal{Description}\) OurTeam & OurOJ. 给定一棵 \(n\) 个顶点的树,每个顶点标有字符 ( 或 ).将从 \(u\) 到 \(v\) ...
随机推荐
- Elasticsearch打造全文搜索引擎(二)
一.Es的文档.索引的CURD操作 1. elasticsearch概念 集群:一个或多个节点组织在一起 节点:一个节点是集群中的一个服务器,有一个名字来标识,默认是一个随机的漫画角色的名字 分片:将 ...
- uboot无法通过nfs加载ubuntu18.04中的文件(转)
问题描述: i.mx6ull开发板,采用alientek官方维护的uboot,使用ubuntu18.04 lts作为nfs server,导致开发板uboot上nfs命令无法加载网络文件系统. 解决: ...
- 【测试数据】android下CPU核与线程数的关系
测试方法 24MB的一张4K图片,连续计算5次直方图. 小米mix2s, 高通骁龙 845.4大核,4小核. 数据表格 线程数 绝对时间(s) 累计CPU时间(s) 每线程平均耗时(us) 每线程最大 ...
- 一些Markdown扩展语法
相信很多人跟我一样,对Markdown是"一知半解",会打一点,知道一点,但是其实从没花哪怕一分钟了解过.其实除了标题粗体插入代码,Markdown还有很多有趣的基础语法和扩展语法 ...
- 记一次org.springframework.transaction.UnexpectedRollbackException: Transaction rolled back because it has been marked as rollback-only异常
@Transactional(rollbackFor = Exception.class) @Overridepublic DubboResult<Boolean> productAddO ...
- linux移动文件与删除文件
目录 一:移动文件 二:删除文件 一:移动文件 移动文件相当于剪切. 格式: mv[移动文件的原路径][移动文件的新路径] 案例: 1.移动文件 案例1:将/root目录下的1.txt移动到/opt目 ...
- Caffeine缓存 最快缓存 内存缓存
一.序言 Caffeine是一个进程内部缓存框架. 对比Guava Cache Caffeine是在Guava Cache的基础上做一层封装,性能有明显提高,二者同属于内存级本地缓存.使用Caffei ...
- springboot+atomikos+druid 数据库连接失效分析
一.起因 最近查看系统的后台日志,经常发现这样的报错信息:The last package successfully received from the server was 40802382 mil ...
- ByteArrayOutputStream内存流
简介 ByteArrayOutputStream 对byte类型数据进行写入的类 相当于一个中间缓冲层,创建ByteArrayOutputStream类实例时,内存中会创建一个byte数组类型的缓冲区 ...
- 阿里云服务器sshd-D cpu占用过高
发现阿里云服务器cpu占用到达了100%,原因是被植入了挖矿程序,解决方法如下 1.使用top命令查看进程id 直接kill杀死该进程过一会就会重新启动. 2.查看该进程所在的文件目录 这个文件基本上 ...