CSPS模拟 57
rank4大众rank
T1 天空龙
让他自由翱翔吧
T2 巨神兵
对于n=10的测试点本可以打出非常优秀的分层状压
但是没有打出来,因为对拓扑图理解不够深刻,纠结于指回的边,实际上只关注伸出的边就可以
正解则是跟分层一点关系都没有
记录两层的状态一定要gg的,所以只记录一层
那么状态定义就不可避免地成了”保证状态是个拓扑图“
然后内部一片混沌,于是又得容斥。
假设现在我们有一个完全正确的状态$st$,也就是所有符合条件的状态都被计算一次
考虑如何转移到更庞大的一个状态$state$
由于$dp$是枚举所有状态和所有转移,所以我们可以认为$st -> state$的过程会经过所有可能的路径
将这些路径分类来达到容斥的目的
假设$size[state^st]=sz$
那么根据最后一次加入点的个数可以分成:
$1 C_{sz}^1 条$
$2 C_{sz}^2 条$
${sz} C_{sz}^{sz}条$
这种组合数的东西,我们十分套路地使用奇加偶减就行了
具体来说就是转移的时候,如果加入奇数个点则系数为1,否则系数为-1
T3
枚举最大公约数,则$ans=\sum \limits_d=1^n \sum \limits_{1<=a,b<=\frac{n}{d}} [gcd(a,b)==1]$
而$n/d$只有$\sqrt[2]{n}$种取值,所以先上分块
随后的东西我不会证复杂度了
$sol1$
假设a<b枚举$a<\sqrt[2]{\frac{n}{d}}$,变成$\sum\limits_{a=1}^{\frac{n}{d}} [gcd(a,\frac{n}{d*a})==1]$
设$k=frac{n}{d}$,上莫比乌斯反演$\sum\limits_{a=1}^k \sum\limits_{t|a} u(t)$
$\sum\limits_{t=1}^k u(t) \sum\limits_{x=1}^{x*t<=k} 1 -phi(x*t)$
然后直接就是调和级数,时间复杂度$nlogn$, 空间复杂度根号
可以水到80
$sol2$
考虑函数$f(x)=\sum\limits_{1<=a,b<=k} [a*b<=k][gcd(a,b)==1]$
发现$f(x)$比$f(x-1)$多出的部分就是$\sum[a*b==k][gcd(a,b)==1]$
也就是把k拆成两部分,不含有相同的质因子
$delta=2^{d(k)}$
可以线筛,时间复杂度$n$,空间复杂度$n$
如果你能结合$sol1,sol2$,同时计算出最优复杂度分界线$n^{\frac{2}{3}}$,可以直接AC
$sol3$
还是考虑那个函数,这次上容斥(又是容斥,算上明天的题都3道容斥题了)
设$g(i)=\sum\limits_{1<=a,b<=k} [a*b<=k]$
枚举ab的gcd t,则重复的部分就是k中除去$t^2$之后分成两个互质的数的方案数
这不就是f自己
$f(i)=g(i)-\sum\limits_{t>1} f(\frac{k}{t^2})$
递归调用自己,复杂度不会证,听说是$n^{\frac{2}{3}}$
然后又要玄学计算最优复杂度分界线又是$n^{\frac{2}{3}}$,结合sol1可以用更快的速度AC
恰完饭再写,饿。
CSPS模拟 57的更多相关文章
- CSP-S模拟57
这次的T1是来送温暖的. T2T3挺神的. T1. 不会 T2. 容斥,挺神的 T3. 考场上被卡常卡掉10分让我很难受.....(虽然说$O(n)$过$1e8$本来就不太行) 考场上:疯狂化简式子, ...
- csp-s模拟测试91
csp-s模拟测试91 倒悬吃屎的一套题. $T1$认真(?)分析题意发现复杂度不能带$n$(?),计划直接维护答案,考虑操作对答案的影响,未果.突然发现可以动态开点权值线段树打部分分,后来$Tm$一 ...
- csp-s模拟测试86
csp-s模拟测试86 分屋前的最后一次考试,我早就放弃了自己. 02:02:46 70 02:02:57 03:16:08 100 03:16:08 $T1$忘了按位计算,达哥按位计算的$T1$当时 ...
- 反省——关于csp-s模拟50
本人于搜索csp-s模拟49题解时,有意识地点开了一篇关于csp-s模拟50T2的题解,并知道了题解是二维前缀和以及四维偏序. 更重要的是,那篇博客说有解法二,叫二维莫队. 于是我上网搜索二维莫队,结 ...
- csp-s模拟测试99
csp-s模拟测试99 九九归一直接爆炸. $T1$一眼板子. $T2$一眼语文题(语文的唯一一次$120+$是给模拟出来的可知我的语文能力). $T3$一眼普及题. ?? Hours Later 板 ...
- csp-s模拟测试98
csp-s模拟测试98 $T1$??不是我吹我轻松手玩20*20.$T2$装鸭好像挺可做?$T3$性质数据挺多提示很明显? $One$ $Hour$ $Later$ 这$T1$什么傻逼题真$jb$难调 ...
- csp-s模拟测试97
csp-s模拟测试97 猿型毕露.水题一眼秒,火题切不动,还是太菜了. $T1$看了一会儿感觉$woc$期望题$T1??$假的吧??. $T2$秒. $T3$什么玩意儿. 40 01:24:46 00 ...
- csp-s模拟测试96
csp-s模拟测试96 $T1$一眼慢速乘,$T2$稍证一手最优性尝试用神奇数据结构优化,无果,弃.$T3$暴力+信仰. 100 03:16:38 95 03:16:56 35 03:17:10 23 ...
- csp-s模拟测试95
csp-s模拟测试95 去世场祭. $T1$:这不裸的除法分块吗. $T2$:这不裸的数据结构优化$Dp$吗. $T3$:这不裸的我什么都不会搜索骗$30$分吗. 几分钟后. 这除法分块太劲了..(你 ...
随机推荐
- MongoDB 学习笔记之 匹配完整数组
匹配完整数组: 创建一个集合(包含数组) db.ArrayTest.insert({name: "Sky" , address: [{"street" : &q ...
- 【Tomcat】tomcat7 设置成系统服务启动
1.启动cmd 2.cd C:\Program Files\tomcat7\bin 3.service.bat install 4.打开tomcat7w.exe可以启动管理服务
- [ASP.NET Core 3框架揭秘] 跨平台开发体验: Docker
对于一个 .NET Core开发人员,你可能没有使用过Docker,但是你不可能没有听说过Docker.Docker是Github上最受欢迎的开源项目之一,它号称要成为所有云应用的基石,并把互联网升级 ...
- 做高逼格程序员之说走就走的「Linux To Go 」
简介:想拥有一个Linux,在自己的电脑上安装双系统太麻烦.想和WTG一样,随插随用. 使用LTG的好处 安装.修复系统:配置好后的Linux系统极其强大. 工作中我们同样可以使用这个系统,回到家里插 ...
- javascript关键字typeof、instanceof、constructor判断类型
鉴于 ECMAScript 是松散类型的,因此需要有一种手段来检测给定变量的数据类型.对于这个问题,JavaScript 也提供了多种方法,但遗憾的是,不同的方法得到的结果参差不齐. 下面介绍常用的几 ...
- MQTT介绍与使用
物联网是新一代信息技术的重要组成部分,也是“信息化”时代的重要发展阶段.其英文名称是:“Internet of things(IoT)”.顾名思义,物联网就是物物相连的互联网.这有两层意思:其一,物联 ...
- C语言-正序输出一个一个多位数
//正序输出一个多位数,所有的数字中间用空格分隔 int main() { ;//是可变化的 ; int d; int t =x; //先计算x的位数 ){ t /= ; mask *=; } pri ...
- MySQL学习(四)深入理解乐观锁与悲观锁
转载自:http://www.hollischuang.com/archives/934 在数据库的锁机制中介绍过,数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据 ...
- Ubuntu PHP安装bcmath模块
1.sudo apt-get install php-bcmath ,安装之后: 2.运行:php -i | grep "php.ini",找到php的配置文件: 加入代码: ex ...
- 如何巧妙地在基于 TCP Socket 的应用中实现用户注册功能?
通常,在基于TCP的应用中(比如我开源的GGTalk即时通信系统),当TCP连接建立之后,第一个请求就是登录请求,只有登录成功以后,服务器才会允许客户端进行其它性质的业务请求.但是,注册用户这个功能比 ...