CSP2024 游记

Day -C-1

启动 Warthunder 然后发现学校电脑不能启动。

遂启动 HOI4。

发现学校有 \(10+\) 个奖励名额,于是决定摆

Day -C

上午启动 HOI4。

下午进入嘉祥考初赛。构式阶梯教室的构思桌椅,byd 这个高度让人趴着写字是吧。

发的草稿纸,薄的和肚子德的膜一样,幸好还能写字。发题发现选择题都很简单,除了最后一题有点麻烦。懒得数了,蒙一个跑路。

看阅读程序。第一题 byd 怎么又是手动位运算??懒得算。做了判断之后蒙了一个选择跑路。第二三题写的什么傻逼,直接蒙完跑路。

看完善程序。这下看懂了(记得说可以使用 \(a_i+b_j\)\(n\log n\) 大做随机 \((\max,+)\) 卷积)!数组从零开始,还有一通二分边界,傻逼,不想看。蒙了几个跑路。次短路输出方案,臭,不想看,蒙了几个跑路。十五(存疑)分钟速通!

带的自动铅笔(2B 芯)涂了巨久答题卡,还找人借了两次橡皮。之后试图睡觉,没有成功(桌子太矮了)。带了一瓶格瓦斯进来,于是开始画格瓦斯(试图使用中性笔素描)。画到了考试结束。

对答案,感觉有 60+,应该能过线。反正过不了也没事。

Day -C+o(C)

获得 66 分好成绩。这就是没看阅读程序的优势。

分析各年分数线得到应该能过。

Day -C+o(C)+1

确实能过初赛的。喜提垫底。

中间 TFR 出了!!非常有代入感!!我们也有自己的******了!!但是打隔膜被抓了。。

Day -1

打模板。不会欧拉回路。

奶:平衡树 number_theory ad-hoc

Day 0.9

上午在机房开新更新的 KR 丹麦(1.3 沧海澄碧),感觉做的还行。但是还没玩到国务委员会上台就润了

然后进考场的时候下午 LXS 突袭问我上午你在机房干嘛???十分惊惶,顾左右而言他,,,

中午吃 M 然后发现到七高的时候还有很久,于是去吃了一碗面,买了咖啡,然后巨想上厕所,于是极速进入考场。

发现 CSP 的监考十分奇异搞笑,能动电脑甚至不重启??那我直接打板子(虽然没用上),下次不是直接带 U 盘进来???写了一下 Flow,tarjan,树剖和组合数。

在外面听到有人在睿频 ST 表(?)

Day 1

14:26 发了密码开始看题。先读了一遍,感觉 T1 T2 是简单题,T3 可能得出充分必要条件之后 DS 优化 dp?T4 很长,但是我最讨厌 \(2^k\) 相关题(包含位运算),并瞬间想到之前某次联考的在这个满二叉树上做 dp 套 dp 的史题(注:\(\color{red}{\textbf{N}}\color{black}{\textbf{ityacke}}\) 场切了)。

T1 发现直接从小到大吃能吃的最大的即可?塞进 map 即可。

这里发现小熊猫的史处:Ctrl+Backspace 会删掉一整行,对于我常用 Ctrl+backspace 的很难受。。自动编译显示警告对于我常常写 1<<k-i 也很难受(不过可以查没有返回值的问题!!),但是鉴于 dev 是史史史,没有 VSCODE,所以还是只能小熊猫。

T2 怎么还要分讨,,,题面提示卡精度,但是规避 double 不用写分数类,还行。每个位置分讨之后就是区间必须至少保留一个的问题了。这直接去掉包含别人的区间之后每个位置二分就可以了。这个时候只过了 40 分钟,优势在我(存疑)。

T3 尝试寻找某些位置为 \(1\) 合法的充要条件,然后发现贡献 byd 就只有颜色段内和段两侧,这不是 \(w(l,r)\) 的区间划分问题吗??一度以为把 aliens 出到 CSPS 来了,还试图使用 LCT 维护,然后发现直接 dp 是线性。然后不知道为什么 70 分钟才通过(旁边的小朋友还在 duel,,)。考场以为优势大完了,之后得知 \(\color{red}{\textbf{N}}\color{black}{\textbf{ityacke}}\) 只花了 40 分钟,十分勇猛。

这个时候看 T4:这个数据范围 byd 是要线性??

肯定先是建棵树出来,从下到上限制逐渐变严非常好,这使得未确定数成为了万金油:他们可以在任何位置成功或失败。然后树上每个点记录可能获胜者,发现是一些确定数和一个区间的未确定数,一次更新被影响的只有到根的链。显然只有 \(\log\) 个确定数,直接合并得到 \(Tn\log^2n\) 的复杂度,发现能过 64~76。

插入:直接合并 byd 是单 log!!被日了!!因为加入定值操作会删去一个定值!!!我在赤石!!!!

这玩意和暴力差不多,于是尝试想正解,,我觉得这可能跟到根的类型序列有点小关系,与i是小分讨一下

image

记为 1234。这时 cur 位于右侧意味着和定值合并(很唐的是我很长一段时间以为树上节点是 \(n\log n\),,,),定值容易预处理;位于左侧意味着和未定值合并,这些未定值显然彼此等价都可以成为获胜者,预处理和即可。

2 是最傻逼的,要么不变要么替换为某定值。在树上先 dfs 一遍找出每个位置被替换的最晚位置,这是 \(O(n)\) 的。

3 其次。3 的作用是把右侧的未定值加入,无条件。

1 是(记轮数为 \(k\))把 \(<k\) 的定值去除掉(简称扔垃圾),然后如果至少扔了一个垃圾或者存在未定值,就把左边的定值加入。

4 是扔垃圾,如果扔了垃圾或者存在未定值就加入右侧未定值,否则不管。

观察过程,我可以从最后一个有影响力的 2 开始做,忽略后面的 2;然后后面的 1,4 和未定值是否存在有很大关系,因此试图找到未定值加入的位置。这有个好处是在这之前定值不超过一个数,于是直接扫描即可。后面的找到最后一次扔垃圾位置,(存在过的)定值是否能存活到最后之跟这个位置有关系,每次在 1 操作加入定值时判断是不是会被扔垃圾即可。然后这样是 \(O(Tn\log n)\),预期 84~100。

插入正解:这 byd 不就是到根的链的处理吗?找到第一个自己的定值被替换位置(\(O(n)\)),然后在树上从上到下统一处理就是 \(O(n)\)。不知道场上在吃什么史。但是 \(O(Tn)\) 就算写也不知道写不写得出来。

然后苦难思考,在序列上有什么高庙方法能 \(O(1)\)。非常傻逼,没想到。于是开写 \(O(Tn\log n)\)(16:30),写写写,写到了 17:00 终于写出了第一版。发现过不去小样例。改改改,小样例的四组数据都挂了一次,,,然后调到了 17:30,通过了 1235 样例,4 样例没通过??(如果是我们的构式联考一开始那版代码就可以通过所有的样例,,,确信)调大数组无果,瞪了一会之后发现当时写的默认扔垃圾是最后一次,但是最后的后缀是 23 操作就不会扔垃圾。改改改,在 18:00 通过了样例 4。

测极限数据发现需要 2+o(1) 秒,但是我们这是神机啊(比 CCF 快一点)??然后卡卡卡,对卡常一点不熟,卡到了本机 1.7s,然后觉得过 92 没啥问题遂下拨,重审了前三题,然后就在系统时间 18:26 的时候突然有人大叫,然后比赛结束了??幸好我交了程序。

最后期望是 \(100+100+100+92=392\),感觉大家应该都切了 T4?出来和同学(社交能力太差不认识任何其他人,,)交流一下发现有人写了 \(Tn\log^2n\),有人写 \(Tn\log n\)出来。max0810 写了 \(O(Tn)\)完,,

image

鸽子评价:没完这个概念非常深奥。

感觉难度差不多是黄绿绿紫?感觉这个难度有点抽象。但是洛谷 T4 评了黑,这个区分度我不好说。据信是 little09 出的 T4,,非常牛逼

希望 CCF NOIP 不要拉史了

出分了

被日了

T3 宝玲了

原因明确又不明

T4 挂成 36

死亡原因竟是过了 4 没测 3

南平

但是 单 log 能过 100

南平

posted @ 2024-09-20 18:44  British_Union  阅读(116)  评论(6)    收藏  举报