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的更多相关文章

  1. CSP-S模拟57

    这次的T1是来送温暖的. T2T3挺神的. T1. 不会 T2. 容斥,挺神的 T3. 考场上被卡常卡掉10分让我很难受.....(虽然说$O(n)$过$1e8$本来就不太行) 考场上:疯狂化简式子, ...

  2. csp-s模拟测试91

    csp-s模拟测试91 倒悬吃屎的一套题. $T1$认真(?)分析题意发现复杂度不能带$n$(?),计划直接维护答案,考虑操作对答案的影响,未果.突然发现可以动态开点权值线段树打部分分,后来$Tm$一 ...

  3. csp-s模拟测试86

    csp-s模拟测试86 分屋前的最后一次考试,我早就放弃了自己. 02:02:46 70 02:02:57 03:16:08 100 03:16:08 $T1$忘了按位计算,达哥按位计算的$T1$当时 ...

  4. 反省——关于csp-s模拟50

    本人于搜索csp-s模拟49题解时,有意识地点开了一篇关于csp-s模拟50T2的题解,并知道了题解是二维前缀和以及四维偏序. 更重要的是,那篇博客说有解法二,叫二维莫队. 于是我上网搜索二维莫队,结 ...

  5. csp-s模拟测试99

    csp-s模拟测试99 九九归一直接爆炸. $T1$一眼板子. $T2$一眼语文题(语文的唯一一次$120+$是给模拟出来的可知我的语文能力). $T3$一眼普及题. ?? Hours Later 板 ...

  6. csp-s模拟测试98

    csp-s模拟测试98 $T1$??不是我吹我轻松手玩20*20.$T2$装鸭好像挺可做?$T3$性质数据挺多提示很明显? $One$ $Hour$ $Later$ 这$T1$什么傻逼题真$jb$难调 ...

  7. csp-s模拟测试97

    csp-s模拟测试97 猿型毕露.水题一眼秒,火题切不动,还是太菜了. $T1$看了一会儿感觉$woc$期望题$T1??$假的吧??. $T2$秒. $T3$什么玩意儿. 40 01:24:46 00 ...

  8. csp-s模拟测试96

    csp-s模拟测试96 $T1$一眼慢速乘,$T2$稍证一手最优性尝试用神奇数据结构优化,无果,弃.$T3$暴力+信仰. 100 03:16:38 95 03:16:56 35 03:17:10 23 ...

  9. csp-s模拟测试95

    csp-s模拟测试95 去世场祭. $T1$:这不裸的除法分块吗. $T2$:这不裸的数据结构优化$Dp$吗. $T3$:这不裸的我什么都不会搜索骗$30$分吗. 几分钟后. 这除法分块太劲了..(你 ...

随机推荐

  1. typedef说明

    typedef 只对已有的类型进行别名定义,不产生新的类型: #define 只是在预处理过程对代码进行简单的替换. 类比理解: typedef  unsigned int  UINT32;  // ...

  2. ui自动化测试

    一.梳理 1.根据要求需要自动添加很多条数据 2.这就涉及到ui方面的知识.元素定位的方法(这个就能遇到很多坑,要完全掌握元素定位才能避免进坑).循环等(代码基础要掌握好) 二.操作 选择进行自动化操 ...

  3. 什么是回流(重排 reflow)?什么是重绘(repaint)?如何减少回流、重绘?

    什么是回流(重排 reflow)? 回流(重排 reflow):对DOM树进行渲染,只要修改DOM或修改元素的形状大小,就会触发reflow,reflow的时候,浏览器会使已渲染好受到影响的部分失效, ...

  4. 网页布局——Box盒子

    在移动端开发的时候,圣杯布局,弹性盒,是我们经常会用得到的,W3C很久以前就有一个display:box属性 flex是最新的,但是在实际的浏览器测试中,display: flex 不能完全替代dis ...

  5. display:box和display:flex属性介绍

    1.display:box 父容器里面的box属性有box-orient|box-dirextion|box-align|box-pack|box-lines box-orient:用来确定父容器里面 ...

  6. Cow Acrobats

    Farmer John's N (1 <= N <= 50,000) cows (numbered 1..N) are planning to run away and join the ...

  7. 在集成环境中修改配置文件php.ini不生效的解决办法

    配置完成之后一定要重启服务,如果重启服务还是不生效. 就去看一下phpinfo(),找到Loaded Configuration File选项,这个才是真正读取的配置文件

  8. GO 第一个程序Hello world

    第一个程序:HelloWorld 一.go项目工程结构 配置好工作目录后,就可以编码开发了,在这之前,我们看下go的通用项目结构,这里的结构主要是源代码相应地资源文件存放目录结构. 1.1 gopat ...

  9. Django实现WebSSH操作Kubernetes Pod

    优秀的系统都是根据反馈逐渐完善出来的 上篇文章介绍了我们为了应对安全和多分支频繁测试的问题而开发了一套Alodi系统,Alodi可以通过一个按钮快速构建一套测试环境,生成一个临时访问地址,详细信息可以 ...

  10. Ubuntu安装NASM和简单的使用教程

    1. 安装 sudo apt-get install nasm 这样nasm就安装好了,终端输入命令: nasm -version 输出版本信息就说明安装成功 2. 使用 创建"hello. ...