NOIP2024模拟赛20 & 11.1 小记

上午炸完了,应该好好总结。

整场比赛所有的时间都花在 T3 上了:

  • 20 分钟就猜出一个结论,过了小样例。高兴极了。

  • 过了半个小时意识到结论错了,于是赶紧写暴力程序打表。

  • 又过了 1 个小时才修补出另外的结论。然后花了 1 个小时实现并修补。结果大样例死了。关键是这个结论一看就不像是对的。什么 mod 32 是多少多少是输。为什么我会认为这是对的呢?

  • 最后 1 个小时就完全破防了,看了其它两个题没什么思路,暴力也不想写了。

赛后兔子说我的结论是正确的,但是不完全,因为小数据的结论不一定能推到大的。

而且正确的结论是一个非常简短的形式,一看就应该是正确的。

这也警告我:某些结论题不能根据小样例盲目猜测,尤其是当你的结论已经非常复杂了。一定是打表和推导互相促进的。这里就不写二元作文了。比如通过打表得知 xyz 不等时必输,转而进行推导:x=y 的时候如何赢?这是容易的,根据相等则输就可以推导。

其实最后结论得出来过后基本上是秒出 map 的双 log,trie 的单 log 优化的做法啊!!!

然后是 T2:反映出对 dp 的彻底不熟练!为什么加了个【限制】的套子你就不会了???

题解告诉我状态过后,我花了半小时就做出了 3 次方暴力。关键是:这个状态设计和刚过去的 CSP-S T3 的状态类似!所以我到底干嘛???

并且现在还是没有做出优化 dp。但这是必须做的。我需要接下来专门花时间对 dp 设计及其常见优化进行复习。毕竟这东西太重要,占比太大了。

hxy

11.3:补了优化:https://www.luogu.com.cn/record/186565519。

考虑维护每个 i 对应的 \((j,k)\) 坐标轴,发现会根据限制删除一些点并且加入一些 \((i,j),(i,k)\) 形式的点。

每次加入点数线性,一共删除点数平方,于是复杂度也是平方,如何转移?我们只需要记录每一行、列还没有被删除的状态是那些即可。

hxy

说一下 T4 吧。最后的计数还是要思考一点东西的,虽然代码很短。八中神机!1s 平方过百万!(带 1/3 常数)

说一下计数的部分。题目给了限制是值域连续,那么根据后缀排名的性质,必然是 \(|s[sa_i]-s[sa_{i+1}]|\le 1\),否则中间那个数的后缀会将 \(sa_{i+1}\) 代替。

其实就是考虑能否有 s 这两位相等的情况,要一直比较后面下去了?由于此题已经给了 sa 数组,我们也就知道了 rk 数组,那么比一下 \(rk[sa_{i}+1]\)\(rk[sa_{i+1}+1]\) 即可。真是巧妙啊!!!

以后很多题都可以点开大样例验证答案是否是 2 的幂次。可以避免向 dp 等高复杂度方向的错误思考

lhy 不要抄我 T4 代码了。


还有一道 duel 的题:https://www.luogu.com.cn/problem/CF1204D2

观察样例发现只会把 1 变成 0。有一个平方做法就是每次修改一个 1 看是否所有 dp 值改变了。优化显然要注意到值域只有 0 和 1。需要检查改成 0 之后答案会不会变大:

分析留到明天再写,明天可能时间会多一些。核心就是分别讨论前后面,对于前面暂时不合法,但是你一定可以一直把 1 变 0。

当然一天就只学习了这些,感觉真是自责啊,明明颓废的情况已经明显少于前面了(

目标是必须定的:现在的当务之急:复习 dp。可能后面会开始专攻图论?


下午体测没什么好说的,居然跳远还是能满,以及 50m 居然进 7s 了。虽然是 6.98s 并且可能有所误差。(gouhan 抢跑!被我反超())

晚上不知道高二干嘛去了。但是在看 hxy 演唱会相关物料!

我毕业后一定会来的,你说好了要巡演。我一定来的!

posted @ 2024-11-01 23:54  LCat90  阅读(13)  评论(0编辑  收藏  举报