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$分吗. 几分钟后. 这除法分块太劲了..(你 ...
随机推荐
- Scala 学习笔记之implicit
implicit 分为隐式转换和隐式参数,下面例子展现了两种方式的用法: package com.citi.scala class Man(val name: String) { def talkWi ...
- Sublime Text 3 配置 Phpcs
Phpcs 插件介绍 可以为 Sublime Text 编辑器提供代码格式检测的功能,使用以下工具(全部可选): PHP_CodeSniffer (phpcs) Linter (php -l) PHP ...
- 包名targetPackage和目录名targetProject
generatorConfig.xml中的 <javaModelGenerator targetPackage="edu.cn.pojo" targetProject=&qu ...
- 关于javascript中的prototype
作为一个致力于前端开发的人员,能够熟练掌握javascript的原理和机制是每个小白的必经之路,这也是最痛苦的.有人说前端功力好不好最主要的就是看对js的掌握能力,有人说十年也啃不完一门javascr ...
- python编程基础之九
原码, 反码, 补码原码,即用二进制表示正数: 原码 == 反码 == 补码负数: 反码: 原码除符号位之外全部取反 补码: 反码 + 1 位运算:运算符 作用 & 按位与 | 按位或 ^ 按 ...
- AutoCAD 2019 for mac 非常好用的CAD三维设计绘图软件
macOS下用什么cad软件?mac在哪下载cad软件? AutoCAD 2019 for mac 是一款非常好用的CAD三维设计绘图软件,可应用三维建模.CAD.渲染.动画.视觉特效和数字图像. A ...
- 关于用gulp合并压缩seaJs模块
现在很多人都在用seaJs来开发项目,seaJs上手容易,操作简单.但在后期做合并压缩的时候却中了个巨大无比的坑,但坑也总得有人来填.于是花了将近一个星期的时间来填了这坑,现将填坑的一些心得与大家分享 ...
- CSP-S 初赛内容整理
图灵奖 艾伦·麦席森·图灵(Alan Mathison Turing,1912-1954)1966 共计70名科学家获此殊荣,华人仅有1位,他是2000年姚期智. 解释型语言 Python / Jav ...
- 浑身尖刺的服务可用性守护者——hystrix熔断器实践记录
netflix公司的产品hystrix(长满刺的豪猪),在高可用目标下具有一定熔断.限流.降级的作用.这里主要写一些自己在使用时的问题解决思路,原理请自行理解,包括线程池与信号量模式等. 注意三个参数 ...
- 浅谈微服务架构与.Net Core
微服务(microservice)这个概念是2012年出现的,2014年3月Martin Fowler在他的个人网站(https://martinfowler.com/articles/microse ...