5.18模拟赛总结

Posted Flame♡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了5.18模拟赛总结相关的知识,希望对你有一定的参考价值。

呜呜呜呜呜呜

今天还是T2 T3分太低了

其实本质是时间安排问题 做得不够快就是潜在丢分qwq

不合理的时间安排感觉少了30-70分

其实今天心情反而平静一些了) 感觉问题出在做的不够快(而不是脑子问题)之后会比较好受

时间安排

7.00-7.30

看题 刻板印象觉得1最可做 2其次 4好像比3好做一点

感觉1ds 234 dp

7.30-8.30

写完T1交了 但是wa了 陷入了无尽的迷茫 (因为充分必要条件错了 很怕是自己的做法有问题(不是点分)) 又开始想会不会是dfs序分块/线段树迫真维护 但又感觉很假

8.30-9.30

意识到自己为什么wa了 想了各种别的思路解决但是都不可行(下面细说)

9.30-10.40

想了会T2,3,4 然后T1灵光一现 A了(出现了极其不合理的时间安排)

10.30-11.00

推了会T3 骗了一发(其实模型已经对了 只是一直觉得是迫真dp 没有往网络流上靠)

11.00-11.16

推了推T2 写了一发 但是不知名wa(40暴力)

11.16-11.30

wa调不出来 无能狂怒 (时间不够了 因为T4有想法),跑路吃饭

12.00-12.28

压着死线交了T4 但是wa 给我整不会了 感觉非常自闭(然后赛后发现不用加文件输入输出 非常激动)

题目分析

T1

明显点分

首先有个想法 把柿子变一下 变成

w − l > = k w-l>=k wl>=k

那么点分之后 w w w 是路径上的最大值

这时我陷入了一个误区

显然有两种情况 最大值在统计/或者被统计的子树上

但是这样会重复统计,因为判断的只是两个不等式是否成立

w 1 − l 1 > = l 2 + k w_1-l_1>=l_2+k w1l1>=l2+k
− l 1 > = k + l 2 − w 2 -l_1>=k+l_2-w_2 l1>=k+l2w2

上面两柿子可以推出来

w 1 + w 2 + 2 ∗ ( l 1 + l 2 ) > = 2 ∗ k w1+w2+2*(l1+l2)>=2*k w1+w2+2(l1+l2)>=2k

所以我们只要减去下面那个柿子的数目就行了——个鬼啊

上面的柿子是下面柿子的充分条件,但是下面柿子不是上面柿子的充分条件

接下来的1h 我想了各种通过数学不等式去重的方法(然后一无所获)

这个时候我又看了一眼题面

我为啥不按题目说的 把所有链抽出来 按 w w w sort一下呢

然后就是点分找链,按 w w w sort

根据不等式 w 1 − l 1 > = l 2 + k w_1-l_1>=l_2+k w1l1>=l2+k

我们在树状数组里维护右边 用左边查询就好

但还有一个问题 一个子树内不能互搜

因此搜每个子树之后 要把当前子树内的链做一样的操作去重

以及别忘了和根节点形成的答案

T2

显然 单调的拿一定是最优的(指c)

所以我们可以把蛋糕按 c c c sort一下,然后枚举左右端点,中间用堆维护

n 2 l o g n^2log n2log喜提40

但为什么 我爆零了呢

呵呵 因为ans的初值要给-1e18

(丢了不该丢的40分)

T3

转化一下就是 划分成若干个子序列 每新开一个的费用是w

受了2的影响 以及做急了(时间)

觉得这玩意是dp

后来还是贪心乱搞了

其实想一下 确实是费用流qwq 长记性了

网络流/费用流一般会用来做很不好状态转移的情况,而且这个时候n一般会比较小

T4

50分是比较明显的sosdp

首先要做到询问O(1)

考虑预处理好所有答案

那么sosdp 考虑
0:选0
1:选1
2:不定

做一下就好

细节还挺多的

我感觉这题比起fwt来说 sosdp更真一点


其实感觉这几次的模拟赛都出在想不到这个问题上已经少了

主要还是现在A题的能力上去之后,A的速度不快,导致时间安排逐渐不合理

应该再多打打会好一些

以上是关于5.18模拟赛总结的主要内容,如果未能解决你的问题,请参考以下文章

5.18日学习总结对象和字符串

day_5.18_py总结

1.19模拟赛总结

1001CSP-S模拟测试赛后总结

CSPS模拟 78

CSP-S 模拟 R2D2 总结