正睿2021游记
Day0
先鸽一下
Day1
说是杂题选讲,其实是 IOI2021 全讲
上午太自闭了,就D2T1还行。
下午讲了几个题,大部分时间全在自闭,只有强者还再思考。
感觉只有两道题可写。
Day2
期望得分200,实际得分180.
前一天听dmy说题目很毒瘤,以为只有几十分。看完题以后感觉T2dp最可做,T1一开始以为是个神仙博弈,T3的40分暴力很显然。就先开了T2,一开始想用wqs二分每次 \(n\log n\) 处理询问,写完以后打算写一个暴力对拍,发现暴力是 \(q+n^2\) 的,然后 swap(暴力,大暴力)。拍了以后发现 wqs垃圾大暴力写挂了。然后打算写20分的模拟费用流,拍了1000多组没出毛病,稳了。然后取搞T1,一开始对于 \(n\le10\) 的写了个类似于 \(\alpha-\beta对抗搜索\) 的东西,然后看了看样例感觉dp好像可以整整,写了一个 \(n^2\) 的算法,之后对于链的情况想到肯定不会走回头路,直接 \(\max(\{a_{i-1},a_i,a_{i+1}\})\)。然后突然想到 \(n^2\) 的换一下根不就行了?码了一下,拍了1000组没毛病,最后写了T3的40分,估了一下有 200。
丢失的分
T2的模拟费用流,原因:这个题是在线的,每次的询问要异或上一次的答案,对拍时为了保证数据合法,把异或这一步去掉了(其实是想造数据的时候偷点懒),但是我代码里有一句:
if(vis[abc.second])continue;
ans+=abc.first;//预处理里面的
h[++h[0]]=ans;
由于不异或的话没问题,但因为最后要异或,ans没清空,就挂了20分。
Day3
讲题+自闭+补昨天的题+没了。
Day4
看了看三道题,感觉T1可能是个数据结构,T2是SAM,T3可能是啥神仙算法。
这场非常变态,感觉T3的暴力最好写,T2其次,T1最不好写。
前几十分钟在想T2,感觉需要在 SAM 的 parent 搞一搞,但是怎么算答案都偏小,最后和题解比对了一下发现少了一种情况,只好先放掉这个题,去把T3的30分暴力写写,在2小时左右写完了。然后就去写T2的暴力了,写了好久没取模以为hash炸了,调了好久终于发现了没取模。然后就接着想怎么在 SAM 上算也没找到啥规律最后就去写第一题了,然鹅一个多小时都没调出来,只拿到了60分,出题人说这一套题队线200分,自闭了。
这个第一题应该早点写的。
Day5
怎么说呢,体验极差。
今天和昨天一样,T2最后没有调出来。
大概看了看3个题,第一题没思路,第二题不会,第三题贪心/dp。
就先想T1了,打了个表找找规律,只找到了 \(n=m\) 的规律,然后就像dp,写了个式子以后发现答案总比真实答案小一点,小的倍数还都是整数,有找了找发现系树的规律,然后就止步于此了。然后T2还看错数据范围了,导致最后才看到这个,导致没时间写了。T1写完以后去写T3了,\(n^4\) 的dp根本没法优化,(jyh写了个骗分拿到了 \(n^2\) 的数据),之后就在想T3如何优化和T1如何拿到第4档分,直到最后一小时才开始写T2,一开始看错题了,写了30分钟样例都过不去,最后8分钟才搞清楚题意,自闭了。
Day6
怎么说呢,体验极差。
大概看了看三个题,T1计数,T2数据结构?,T3多项式。
先开的T1,码了1个多小时的暴力,自闭了。然后看到T3过的人很多,看了看T3,发现70分确实是送的,就写了一下。然后接着想T1,但是漏了一种情况,导致答案偏小,当时没找到问题,就去写了写T2,感觉T2是神仙数据结构没T1可做,去接着想T1,死活算不对答案,自闭了。唉,题订的倒是怪快,考试就是想不出来。
反思
其实T2不难,当时感觉多想想能想出来?,主要是想出来倒序处理操作就行了。这个技巧/套路也好久没用过了,有点不熟悉了。
T1 不知道为啥会漏掉一种情况,明明情况是对称的说。
俺も頑張らないと!
Day7
dyh 的第二场,老自闭了。
这几天也就只能打打暴力,跟往常一样看了看题,还是只会暴力。
丢了10分,因为T3 return的不是0,判re了。
今天的题都不是太可订,自闭了。
Day8
今天太恶心了,第一题是会的,fhq treap因为2个变量名写错了调了3个小时,淦,痛失50分,好久没用了,有点不熟悉了,打算最近再熟悉熟悉模板。还剩不到一周的时间了,好自闭啊。第二题网络流能直接拿68分,正解用到了那个串并联图的性质,看了看好像结论是对的,但不会证明,没订。第三题太变态了,全场仅6个人有分,暴力难度很大。
Day9
先开了T1,部分分一档一档拿的,前三档还好,想一想能想出来,正解用到了分治/随机化,考场都没有想到,当时就一只在思考主要问题:找到一个非零的位置。本来也打算随机化的,但是想了想感觉不太稳(之后确实被证明是可以被卡的,但出题人手软了)就没有写。感觉亏了,写了总比不写强。然后就去看T2了,一开始看T2就感觉要用sa,暴力的话直接哈希就行了,然后考虑部分分 \(n\le30000\) 和 \(a_i\) 全都相等这个。看着 30000 感觉是根号数据结构?\(a_i\) 都相等的情况考试的时候是想出来了,height 数组上二分一下,莫队单点添加删除就行了,没调出来,好几天都有这个问题。写完T2暴力后就看着T3,写了一个大暴力打了好久得到一个 5 分的表,然后发现表假了,改了改感觉没问题了,又假了。
这几天好像码力不太行,自闭了,感觉可以提前想想部分分早先写来解决一下这个问题。