前言
个人感觉形如 “day -x” 这样的形式笔者和阅读者看起来都不友好,所以就直接写日期了(
国赛后统一写的,有的细节可能有点记不清楚,错了就错了吧。
非常流水账。
8.1-8.4
即将UNR,第三轮模拟集训过半,喜获两天假期。
感觉这几天状态都比较好,竟然可以做出小Q的商店这样的魔法题。回家一如既往和slb坐出租车,车上突然就感觉自己的状态可能要开始转低了。
不知道是真的提前预知,还是这样的心理暗示导致了后面几天的垃圾状态。
8.6-8.7
UNR。
期望:85+40+10+60+50+20
实际:30 +40+10+40+50+20
打铜了,寄。
什么是垃圾状态?大概就是这样吧:一共没写多少分还挂了一车。
D1T1被降智用神秘的bfs思路硬做,D1T2、D2T2都几乎是在正解门口拐弯了。
D1T3、D2T1、D2T3呢?就是不会,这下尴尬了。
8.9-8.12
顺着UNR的状态继续低迷。一次次在正解门口拐弯,有点破防。
突然通知需要提前7天去昆山?
好像既没多高兴也没多不高兴,那就去呗。
8.13
到达昆山。
国赛压力?三国杀真好玩。
骰子roll出来我和KH一屋,贴贴!
8.14-8.18
第三轮集训的后半程。由线上变成线下了,我看挺好。提前适应和大量其他选手同场竞技被炸心态的局面
感觉状态逐渐回暖了,但排名看起来还是不咋地…有一天180分rk10令人印象深刻(不过考后看那个T2好像确实还挺可做的)。
不得不提到 ZZ 四场1140分的神迹,令人震惊…
最后一天给ntf开生日会,有蛋糕和奶茶,很开心。
晚上吃了日料自助…刺身真的是可以随便吃的吗???
8.19
三国杀真好玩
8.20
提前入校报道。
第一次参加这样大型的线下活动,看到道路两边 “NOI,让我们相聚” 的宣传旗,以及周围不认识的选手,很兴奋。
到的很早,在大片空白的签名墙上签名,和KH tietie!
和shr同寝,面到了同寝的djy、ysb以及zwz、lnx等线上常常见到的同省选手。
原来你们长这样啊。 面基时见到的人似乎总是和只靠名字想象的形象有比较大的反差。
不知道为啥对ysb有特别的好感。
食宿环境都说好,确实好。(这就是我的语文底力吗)
咖啡吧的东西敢再贵一点吗…虽然你是贵族学校,但我不是贵族诶…
上午出去溜达去了“转圈广场”,感觉很好玩。
想拉djy也去玩,但djy势力打KH女装牌,于是五对一的对线也输了。
收到gg叮嘱,强忍住没有玩三国杀。
于是就开始打块了。
tetr真好玩。
晚上参加了晚会,没有音乐鉴赏能力,只觉得歌还挺好听的。(如果我都觉得难听,那恐怕实在是太难听了吧)
游戏环节是谁是卧底,第一轮CSP对NOIP,第二轮C对Pascal,第三轮LCP对LCS。这个游戏很好,观众和玩家可以同乐。不过第三轮的题目实在是有点谔谔,基本是随机票了。
djy第二轮上了,英勇牺牲,但是遗言宣传了KH女装,不亏。
最后压轴曲是开心向前飞?
不知道为啥,紧张–。
晚上十点熄灯,对本夜猫子实属酷刑。躺床上睡不着听到djy和ysb连夜给KH订女装,叹服于其强大的行动力。
8.21
报到日。
领了秩序册、书包、玩偶、衣服、笔等等很多东西。
啊啊啊我喜欢那些徽章!
被采访乐,再次宣传KH女装。
开始挥霍,见人就换,十个的卑微库存迅速蒸发。
对djy白嫖我一个徽章的行为强烈谴责(bushi
进入空城状态,进行一个徽章的白嫖,谢谢zdz、cjf、crc、yjz、oyds,谢谢朋友们!
tetr真好玩。
晚上开始省队互测笔试
8.22(笔试+试机)
上午还是在复习笔试,与其说复习,不如说是借这个行为平息一下紧张。
进入赛场。顺利完成了emcas的本地化(伏笔),看看题:NOIP2021,好的,关上pdf。
狗都不写!
开始写NTT练手,愉快的过了1 1卷1 2 1 的样例,正在写对拍,突然发现一大波代码文件占领了桌面…
仔细看看?咋还有luoyisu啊…打开,是一个未完工的NTT…
再回头一看,我的a.cpp呢???打开变成了一个奇怪的二分…
举手询问了工作人员,说是出锅了,突然觉得自己问的好多余,就像提问1+1等于几,然后他对我说:“很抱歉,但真的是2。”
只好重新再写一遍NTT,还没打完就开始笔试了。干扰项比较脑瘫,怕眼瞎,检查了114514遍。
答完本来还想再摆会,但大家似乎都起来了,我也就润了。
晚饭领了密码条。晚上有些紧张,看了看板子(再一次啥用没有),然后就按照惯例出去遛弯了。几乎把校园户外逛了个遍,有一片黛墙黑瓦的建筑(似乎是幼儿园)里面建的比较别有洞天,有庭院的感觉了,体育场很大,爬到看台最上面视野很好。很静,人很少,很好。
8.23 (day1)
rp++!
进考场还是先本地化,诶?我的emca宏定义ctrl-s为保存咋不好用了啊!!!心态–;
收拾好心态,先把三道题通读一遍:T1看着非常启发式合并,T2感觉是不太难(大伏笔)的计数,T3…好吧我决定开局只通读两道题。
先开T1。
感觉似乎确实不太难,模拟赛恐怕很难见到这么良心的T1,启发式合并set的两个log的做法显而易见,很快也就发现线段树合并即可单log了。
正准备写…诶那我怎么回答询问嘞…
不太会诶,这下尴尬了。
突然想到可以随机取40个再check,错误概率是
1
2
40
\frac 1 {2^{40}}
2401,这很好。
但是复杂度咋变成
O
(
40
m
log
n
)
O(40m\log n)
O(40mlogn) 了啊…
但这样我的桶只需要支持单点查值就行了,不需要维护全局总数,这样就可以请出我们的log杀手:哈希表了。
诶操作2我还得知道最后一个元素是啥啊…不管了deque启发式合并模拟!
然后复杂度就对了,单log,很好!
写写写,写完测1e5的大样例:0.25s。
好寄,开香槟咯。
看了看,瓶颈主要在于deque这玩意太慢了。(前一晚:“deque比vector慢的多的多”)
然而不知道为啥我认为这玩意能过特殊性质,所以有80,再加上已经90min,就摆了。
T2看着非常机器人表演,很萌萌题的样子。
然而…越做越不会啊…
开始去洗手间+自闭。
这种问题肯定是现象确定状态怎么check,想了想感觉距离当前位置比较远的石堆就不关心了,可能是个类似自动机的东西,开始在演算纸上大展宏图(bushi,建了20个状态,连好7个状态的出边之后感觉没啥前途,即使我把自动机建出来了恐怕还是不太会做添加k个石子的部分…而且这个自动机出bug了根本无法调试。
更加自闭,决定看看T3,花了九牛二虎之力看了一遍题面,突然发现自己怎么连n=3的链都不会做…越想越觉得这不显然无解吗。自闭好久后才发现读反题了,点集合交为1是合法运算,那没事了。
然后继续想…还是不会做,这下尴尬了。
当时差不多是11点左右,我的手里只有一个拿不到满分的T1代码,我已经开始思考滚粗学whk了…
后来决定还是不能摆,开始莽暴力,T2想想后觉得爆搜所有状态后搞个复杂度奇高的dp check还是能写的,有40,决定写。
12:00左右写完了,开始看T3暴力。
非常想写B性质u=1的25分,但怎么都不会…想了想用类似优秀的拆分的方法搞出了链(后来KH告诉我这玩意叫猫树),然而checker一直爆操作非法,令人汗颜。
时间已经不到10分钟,把T1和T2的码打了打包,有点想摆,但还是决定回来接着调调这个链。最后基本是我看在什么询问寄了就定向特判,终于过了样例。
存好文件是 12:59,不管了,ctrl-L!
继PKUSC之后又一次顽强拼搏。
出考场,感觉T1撑死150,已经没了,结果发现KH和我差不多,第一感:24OI怕不是都没了…
食堂见到了广大附的教练,告诉我们他们学校的几位高手分数也不高,突然又有希望了。
吃饭味同嚼蜡,没胃口。
回去路上突然听说T1要开longlong,想了想:好对哦…
又突然想到T1特殊性质我的代码并不会快,5e5的数据应该会全T。
…好寄,开香槟咯。
不久得知可以查成绩了,解锁,打开LN-004.pdf…T1 100!?
100+40+10
一分没挂,感谢CCF对我的伞兵错误的包容。
KH 100+0+10,T2暴力假了,但T3神秘的多了10分。
slb T1 爆零了?心头一紧。后来听工作人员说不少人都是,正在查,放松了一些。
cjf告诉我是 std::deque 在声明时会申请大量内存导致MLE了?
我焯。
我焯。
我焯。
slb用ulimit -v 1024678 试了一下,真就寄了。
。。。
诶我不也用deque了吗…
哦,由于我用的哈希表,静态内存只有200+M,虽然凭空多了600+M内存但还是惊险的过去了。
令人后怕。
有点想骂人,但又不知道骂谁,出题组似乎也没多大过错。
回来听说Day1 150分挺高?和zwz并列了,信心++。
开始被(毒?)奶。
讲评很有趣,KH还上台发言,吐槽了一下他T3莫名其妙多的10分。
T2很不可做,823 8765,不禁需要技术,还需要一定的运气和信仰,坚信它的有效状态非常之少。
T3…打扰了,完全没听懂,再让我写可能顶多有个20。
8.24(休息日)
字面意思,休息。
一大早看到gg:上午开卷,谢谢。
被迫营业,又看了看板子和之前的题。
下午进行了一些耗能比较低的摆烂,大富翁无脑又好玩。
晚上再次进行遛弯,心态有了一点变化,没有day1前那么轻松了。
8.25(day2)
rp++!
先看题。
T1感觉很神秘,秒不掉。
T2似乎是推性质题。
T3又好神秘。
先开T1。
提示都告诉我们了这道题要树哈希。
然后嘞…
一个很直观的魔法暴力:先确定重心,然后儿子最多有k个不一样,两两尝试匹配,递归下去。
想了想,感觉重心和递归次数都是与k相关的,不怎么大。
找重心和求哈希都写完了,写输入时突然看到定根了。
…那还找个锤子中心啊,复杂度–,这很好。
写完之后多测清一清很快过了所有样例,对着代码蹬了蹬眼,感觉可以构造出来的比较差的情况的复杂度也许是
O
(
2
k
n
log
n
)
O(2^kn\log n)
O(2knlogn) 的,也还行,再加上对FFC的信任,我相信它可以通过!
然后开T2,
O
(
n
2
)
O(n^2)
O(n2) 有72哎…
哦我好像根本不会
O
(
n
2
)
O(n^2)
O(n2),那没事了。
还是从头想吧。
先是一些比较自然的基于贪心的推论,按最小值从大到小考虑限制,如果区间内还没有这个最小值,肯定是在能填的最靠前的地方填一个。这样问题就变成了有一些定点,其他的位置有一个下限限制,要求最小化逆序对数。
还是不会,这下尴尬了。
想想l=r的性质,也就是没有最小值限制,这个时候一直贪心就是对的。
开始赌狗:我猜任何时候贪心都是对的!
写了一发,和爆搜拍了一会,拍不出来?
仔细一看,怎么基本全是-1啊。。。
突然想起来自己还有样例这个东西(大雾),测一发,寄的稀里哗啦。
那可能是假了吧…
开始决定拼暴力,感觉拼一拼分可能也够队了。
写了发A性质,怎么还是寄了??
仔细看了看,发现是自己应该对最小值相等的限制按照左端点降序排序。
诶那我贪心会不会也是这么寄的啊?
还好有备份,改过来跑了一下,过了?
喜。
测了几个样例,都过了。
那就当它是对的吧,信心++。
11:30,此时大概是我唯一一个受到大赛心态影响的地方了。
我当时有两个选择,一是想一想T2正解,二是冲完
O
(
n
2
)
O(n^2)
O(n2) 的72再狗一个T3的暴力。模拟我应该会选A,但赛场上我选了B。
我只想Au,对于我,稳一点比高分更诱人,我崩不起。
把那个三方的破玩意随便改了改,变成
O
(
n
2
)
O(n^2)
O(n2) 了,大样例还能过,72分到手!
T3想了想,发现 填1和填k奇蠢无比,按这个思路就能直接解决 k=3,剩下的也能
O
(
(
k
−
2
)
n
)
O((k-2)^{n})
O((k−2)n) 爆搜,有23分。
码码码!
愉快的码完,开始检查文件,等待考试结束。
赛后听KH说完才发现正解就是个脑瘫线段树就做完了,感觉很亏,但也就这样了。
KH最后30分钟没冲出来T2的正解,不然24oi就双金了(
等分时变得异常忐忑,害怕犯了什么低级错误导致一场空。
下午查分:100+72+23=195
一分没挂,好!
感觉应该是稳了。
由于疫情,闭幕式取消了。
许多选手已经润了,宿舍变得冷清。
终于可以三国杀了!和crc以及另一个福建老哥打7人局,很开心。
8.26
出榜了。
100+100+40+10+100+72+23+5=450,rk 13。
Au线403,KH真就只差那40.
Ag线293,比我预期高很多。
Cu线147,也比我预期高很多,祝贺rzj能守门拿到牌子。
slb如果D1T1的分在的话Ag是很稳的,感受到竞赛有些时候体现出来的不公与残忍:一名稳Ag甚至Ag+的选手,不应该因为一个没多少人知道的犄角旮旯知识点而付出这样的代价。
好在他才高一,来年加油吧。
zwz也令人感伤,空有一身绝艺。