联合省选 JSOI2022 游记

Day 998244351

学了一下 NOI Linux 2.0 的使用,防止赛场上出现不知道如何操作的情况。

vscode 真好用!

Day 998244352

尝试补了点模拟赛的题目,实际上并没有补掉多少。

又熬到了十二点钟才睡觉。。。省选前一天再这样就寄了。。。

Day 0

上午打了点板子,包括费用流,AC 自动机,FWT,PR,FHQ Treap 和线性基。

奶一口明天不会考(我都不会)的算法:任何形式的计算几何(包括但不限于二维凸包,旋转卡壳,闵可夫斯基和,半平面交),回文自动机,树分块,LCT,Min25 筛,杜教筛,最小树形图,保序回归。

奶一口明天会考的算法:DP 计数模 \(998244353\)\(10 ^ 9 + 7\),树上 ds,贪心。

今天下午五点试机,键盘和鼠标都挺好用。打了 BIT,SA 和 Pollard - Rho,Miller - Rabin 写挂调了好长时间。

已经很久没有体验到赛时切难题的快感了,希望明天能体会一下。

联合省选 JSOI2022 rp++。

Day 1

早上八点二十进考场。配了一下 vscode,查看下发试题。

开幕雷击,T1 大模拟,我的评价是 *** 准有些大病。读完题目发现并不算难写,打算开冲。

写到九点钟过了所有样例,并没有写对拍或者构造极限数据。于是丢掉看 T2。

T2 一看这个数据范围以为是矩阵快速幂,想了半个小时,发现这玩意是若干个一次函数和常数相乘,大力拉格朗日插值,还要写换根 DP。

于是写写写,写到十一点半还没调出来,这个时候 T3 还是零分,顿时感觉要寄,赶紧丢掉 T2 看 T3。

没脑子想 T3,一点思路都没有,甚至没有看到白送 20 分。

转战 T2,一直调到十二点十分左右终于过了前 70 分。一测极限数据,好家伙,十秒钟。T2 只有 28 分,这不是要寄的节奏么。赶紧卡常,卡到 8s 实在卡不动,赶紧把 T3 暴力写了,测过样例就扔了。

还有 15 分钟,感觉做不了啥事儿了,继续卡 T2。把 vector 换成链式前向星卡到 5.5s。

JSOI 这机子就离谱,vector 换成前向星快了 2.5s,跑 3e5 次 \(\mathcal{O}(n)\) 树形 DP 竟然要 3s,我怀疑不是我的常数太大而是机子太烂。

upd : 反转了,我以为 NOI Linux 2.0 默认自动开 O2。

考试结束后问了一圈分数,ymx T2 没写出来寄掉了;ycx T3 没打暴力但拿了白送的 20 分,所以比我高 12;tzc 把 T2 切了,T3 乱搞过了大样例,很恐怖,Day1 标准分预定。

A 队要没了,不过问题不大,进队就行,没进队也没关系,明年还有一年,况且技不如人。

回家把 T2 补了,感觉其实不难想,就是有点难写。

在洛谷上面测了一下极限数据,大概要跑 1.8s 的样子。那前面 42 分应该稳了,剩下 28 分随缘。

估分是 \(100 + [42, 70] + 8 = [150, 178]\),非常的寄,应该没上队线。

赛后测了一下 T3 样例 2(赛时没发现),挂了,T1 用 map 又被卡 T 了。估分变成 \(122\sim 170\)

Day 2

发挥很烂。

开考两个半小时一题不会,一个 \(\rm polylog\) 都不会,得分 \(40 + 24 + 12\)。心态有些炸。开考前喝的红牛和脉动完全没有用,fuck。

忽然想到 T1 可以根号分治。算了一下有 14 个质数,问题不大,于是开始写写写。连写带调到比赛结束最后十分钟。拍的是 \(n\leq 15\) 的暴力,甚至不知道大数据的正确性,而且非极限数据跑了 1.6s。

感觉得分会和暴力差不多,但是我把暴力删掉了,咦嘻嘻。回家之后测了一下,正确性没问题,但是极限数据洛谷跑 2s。把 14 个质数改成 13 个质数就能跑进 1s 了。\(43 \times 47 > 2 \times 10 ^ 3\),考场降智了。。。

没有一下子看出来 T1 的根号分治,但是这种套路都被出烂掉了。如果前一个半小时直接过了 T1 说不定今天能翻盘,不过谁知道呢。

T2 写的 \(x = 0, y = 1\) 假掉了,挂了 \(16\) 分。估分 \(85 + 8 + 12\)

问了一下 tzc 132;ycx 212,T1T2 都切了,我趣,太牛逼了,考出了集训队水平(比 djq 还高),Day2 标准分预定;lxr T1 把 41 当合数做了,寄了。

比赛除了不给大样例其它没啥好吐槽的,题目质量是高的,就是把我区分下去了。

等出分吧,没进队也不买 D,发愤图强破釜沉舟再来一年。

Day 3

补了一下两天的 T1T2。D2T2 这个贪心真的很人类智慧,很佩服能在考场上面做出来的人(但是除了 \(x = 1\)\(y = 0\) 以外的情况都不难考虑吧?)。但是仔细想想又非常自然。

分析一下省选失利的点。

一是两天区分题(D1T2 & D2T1)实现得太复杂了,不仅浪费了很多时间写代码和调试,而且还没有得到期望的分数。D1 误认为 NOI Linux 2.0 自动开 O2,程序跑得太慢,所以没敢写剩下来的 30 分。D2T1 没有仔细分析 \(N = 13\) 的界导致常数翻倍,白白丢掉 15 分。本来这两题都是在我能力范围内的,明明一个半小时绝对能搞定的问题,最终却花了三个多小时。

二是考场降智太严重,不习惯考试氛围(可能是因为睡眠不够)。D2T1 很明显的套路硬是瞪了两个半小时才看出来;D1T2 拉格朗日插值求多项式前缀和,本来积一层分就好了,我硬是把多项式系数给插出来,然后再自然数幂和(实在是太傻逼嘞!!!)。D1T3 没看到 20 分白送,很可惜。

三是缺乏抽象题意的能力。D2T2 的操作实质是树上对儿子集合的一些变换,只要想到这一层那么除了 \(x = 1\)\(y = 0\) 以外的情况都是好解决的,说明从外层往里层弄是自由度最大的。考场上连这一步都没有想到(思考时间太短了,T1 调完就剩下十分钟!!!),所以获得了 8 分的好成绩!D2T1 应该及时意识到这玩意是 \(\rm polylog\) 不可做问题(题意抽象一下就是 集合覆盖方案计数),继而想到根号分治。

怎么改进呢?首先是补充睡眠,其次就是 think twice, code once!!!!!!!!!!!!!,考场拿到题应该先把所有题目通读一遍。

估分在 250 左右,\(80 + 70 + 0 + 85 + 8 + 12 = 255\)。太傻逼了。本来 300+ 是稳的然后给我玩没了。

挂了多少分呢。D1T3 28 和 D2T1 15。这里挂分指不应该丢的分。再深究一点 D1T2 30 和 D2T2 16+ 也不应该挂。


分析了一下 JS 形势,进队应该(?)没问题(主要是联赛有那么一丢丢优势)(奶死了怎么办?)。

csy A 队队长坐稳了。

ycx A 队应该(?)也稳了。

tzc 要不是 D2T1 和 D2T3 挂掉那么 A 队也稳了,当然要相信 CCF 数据的水度。

syr(学长)女队应该稳了。

jgh(学长)虽然没做出来 D2T1 但是一分没挂,太猛了,进队应该没问题。

ryz(学长)可能要学校承办 APIO 的救济名额了。

ymx D1T1 忘记判数字,D1 两位数,彻底寄了,太惨了。

lyc 要退役了 /ll。

lxr 不太清楚。把 41 当成合数做可能不会挂很多分。

yzh(外校)有很大希望进队。

qzx(二级学弟)好猛。可能要 E 队队长了。

sjc(学弟)虽然联赛爆炸但是省选好猛。应该能 E。

戴老师怎么回事啊!!!怎么打假赛啊!!!

接下来几天该干些什么呢?卸掉 phigros 补以前模拟赛的题罢,补点博客罢。

Day 4

出分。

D2T1 在洛谷机子上测 T 成 35 分了,而且 T 满了 1.2s。实际上拿到了 85 分。

\(100 + 70 + 0 + 85 + 8 + 12 = 275\)。进了 B 队,校线最后一名(可能有人申诉然后被挤下去?)。

如果挂了这 50 分,就要掉到全省二十多名。u1s1 真的惊险。

接下来该备战 NOI2022 了。

posted @ 2022-04-17 16:31  qAlex_Weiq  阅读(2704)  评论(1编辑  收藏  举报