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\) ...
随机推荐
- python中addict模块,设置和读取嵌套字典
源码地址: https://github.com/mewwts/addict/blob/master/README.md
- 离线下载第三方Python包
1.进入Python第三方包下载地(https://pypi.org/)搜索自己需要的包 2.下载需要的包的版本 3.将.whl格式的文件更改为.zip文件,并且解压 4.将解压的2个文件放到Pyth ...
- Hackurllib
是的大部分的http请求库都不够hacking 不过有w8ay师傅的hack-requests 但是我想造一个属于自己的轮子它将会足够简单足够hacking 用这个名字是因为我选择了urllib做为最 ...
- JQuery选择器的使用和分类
jQuery选择器 id选择器格式 $("#box") //获取标签里的id是box的标签 类选择器格式 $(".a") //获取标签里的类名是a的标签 标签选 ...
- cesium加载gltf模型点击以及列表点击定位弹窗
前言 cesium 官网的api文档介绍地址cesium官网api,里面详细的介绍 cesium 各个类的介绍,还有就是在线例子:cesium 官网在线例子,这个也是学习 cesium 的好素材. 之 ...
- java有四种访问权限
Java面向对象的封装性是通过对成员变量和方法进行访问控制实现的,访问控制分为4个等级:私有.默认.保护和公有,具体规则如下表:
- redis集群运维
Redis 的数据类型? Redis 支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及 zsetsorted set(有序集合) redis优势 速度快, ...
- Linux 配置 mycat 和 分库分表配置。
Linux 如何配置mycat? 3.配置mycat 3.1.规定linux的用户名和全名不能叫mycat!!!否则mycat会不生效(原因是影响整个linux系统的环境变量导致mycat的配置环境变 ...
- 我在 Gitee 上发现了一个简洁又好用的网络音乐播放器!
这几天无聊的时候我想听听歌,但我想要找一个简单快速的网络音乐播放器来用用.这时我在 Gitee 上看见一个看上去不错的开源项目 -- Hi音乐. 项目链接:https://gitee.com/hi-j ...
- 如何高效地写 Form
工作少不了写"增删改查","增删改查"中的"增"和"改"都与 Form 有关,可以说:提升了 Form 的开发效率,就提 ...