新赛季临时脱产日记(下)
9.1
开学了。来学校的路上异常的堵。
到了培训室可以视奸别人在操场搞开学典礼。
今天八点有模拟赛。
先开 A 发现是暴力题,写之,30min 的时候通过了大样例和拍子。
开 B,发现 \(O(n^3)\) 做法非常傻逼。先写了。
然后没啥想法啊。看了一眼 CD,都是比较阴间的题目。
最后选择去看 D。但是好像我一开始对题意理解出了比较大的问题,跟教练扯了一个多小时才搞清楚,浪费了一大把时间。
弄清题意之后发现十分阴间。不会做。
去看 C 了,发现是神秘多模匹配,先建 ACAM。
然后翻了一下大样例,发现只有一个是 3
,其余都是 0
和 -1
。
所以判掉那个大样例,然后把所有长度为 \(10\) 的串爆搜出来丢到 ACAM 上检查。注意到 \(6^{10} \times 20\) 的时间可能爆掉,所以我们再爆搜的时候记录一个 ACAM 状态进行剪枝,测试大样例在 \(\text{0.03s}\) 内跑过去了,非常厉害。
再来看 B 题,打表一下决策点发现有决策单调性,优化到 \(O(n^2)\),能获得 \(\text{50pts}\)。
然后对着 B 坐牢到考试结束。看榜发现是 \(100+35+100+0\),B 题不明原因挂了 \(15\),C 给我创过去了。有点逆天了。
下午进行一个题的补,D 题看了一眼题解,发现拆完单点贡献之后是傻逼题。B 题比较神秘,我感觉我想到了换答案作为下标也不会转移。感觉 B > D。
花了一个多小时补完题,注意到 vjudge 上出现了神秘题单,做一下。
晚上出去吃了个饭,吃完回来打摆。搓炉石,用圣骑士别人锤爆了。天梯上怎么全是法师和战士。还有战士的任务和传说随从怎么这么逆天??
晚上继续写题单,跟 AmaoFox 约定了将排行榜首 A 拼成一个折线。下面是截止今天晚上的效果图:
还有 CF 火车头优化怎么这么大?????加了火车头 \(\ge \text{3000ms} \to \text{734ms}\),怎么解释???
9.2
上午没有模考,写昨天的练习。
在榜上完成了折线(虽然被 ollo 抢走了一个首 A,但是问题不大):
下午讲了一下前五题,然后四五点开了一个新题单,难度比这个难。ssb 说让我们每个人负责将一道题目。
看了一下紫题黑题对半开。有点逆天。我运气比较好,要讲一道 *2500。tml 是一道 *3100,Pretharp 是 *3300,Harmonic 是 *3400。
注意到有 Surprise Me 和 Matches Are Not a Child's Play 两道 xyd 讲过的题目,但是我都没过。
决定先把自己的题目写掉。
发现我的题是唐题。光速过题后找 ljm 大神询问 LCT,然后过掉了那个题。
回家之前扫了一眼 A 题,发现也是唐题,回家之后把他写完了。
9.3
上午比赛。
开 A 发现是傻逼,10min 写掉。
B 感觉比较可做,先放着。
CD 都比较神秘,回去玩 B 题。
发现固定 \(x,k\) 算答案做到一个 \(\log\) 是简单的。发现具有单调性,再来一个 \(\log\) 做完了。
本机跑的有点慢,不知道过不过得去。
看 C,建完图统计欧拉通路数量。想了 1h 发现怎么是魔改 BEST 定理。
先把两个题暴力写完,然后写 C 正解。
然后写挂,然后调到下考,没调出来。什么鬼题。
下午不打算补比赛题了,感觉没啥意思。继续做题单。
注意到 C 是紫色,先看一眼。路径最大值,先建 Kruskal 重构树,转化为给定一个点,插入一个区间,删除一个区间,查跟一个点 lca 深度最浅。旁边 tml 看一眼说这不是典吗,找 dfn 最大最小就好了。感性理解一下确实是对的,套一个线段树好像就做完了。
写了一坨大的之后没怎么调就过了,比较神奇。
扫了一眼 tml 的 H 的题解发现是神秘矩阵树,没看懂,先不写。
L 疑似又一道多项式联动矩阵树,注意到模数 \(10^9+7\),所以不能 ntt,只能拉插。 \fn
过掉 L 去调 Surprise Me。实在瞪不出来哪里有问题,重构了一下虚树部分,提交发现还是 WA on 14。注意到我有一个地方漏取模了,加上,过了。
吃饭之前 Pretharp 发现他的 *3300 是假的,并锐评真实难度大概在 *2000 左右。
下午 5:30 出去被校门保安拦住了,他说 6:00 才放人,这么唐。登记了一下出去了。
吃完饭发现又进不去了,没办法,等到六点进去了。
晚上感觉没做啥,一直在摆。想起来还有那道 Pretharp 要讲的题没写,就写掉了,还是挺好写的。
9.4
上午到培训室之后好困,先睡两个小时。
然后把训练题唯一没人过的 H 写掉了(就是 tml 要讲的那个),然后看 E。
发现 E 是一个假的 *3100,感觉实际难度在 *2200 左右,很多性质都很显然。发了一会呆之后去面包房买了个午饭,就回来把这个题过掉了。
下午到晚上八点一直在看青鱼的 WF 直播。前面竞争实在是太激烈了,不知道最后东大清北和莫斯科国立哪个能胜出。稍微看了一眼题目,感觉还是挺抽象的。
然后就是摆摆摆,今天真是摆懒的一天。
9.5
昨晚丝之歌发售了,不过昨天因为 steam 爆掉了没有下载下来。
然后花了一会时间把丝之歌下下来了,开始幸运!!!
打了一个上午。
下午是比赛。
签到题比较抽风了,想一会写一会磨了半个小时。
然后开后面的题。hjk 告诉我们题目难度是 ACDB,无所谓,先都看一遍。
C 感觉是可做题,糊了几个小时发现是线段覆盖,唐完了。倍增优化可以做到一个 \(\log\),写写写。
写完的时候旁边 tml 测样例发现比答案少 \(1\)。
然后 zyb 告诉我们 D 是没脑子题,然而想到下考也不会,打了暴力和特殊性质跑路了。
最后荣获 \(100+0+100+28\)。tml 的 C 被卡常了,zyy 据说是会了正解没调出来。Amao 拿乱搞草过去了 D,不愧是 hjk 数据。
下午据说爆出来 A 数据只有链和环。不过去年就已经知道 hjk 不会造仙人掌了。比较厉害。
晚上继续幸运。
9.6
上午神秘多校。
开题貌似全部不可做,但是仔细瞪了一下 C,怎么是区间斜率最大值???这不是典到家了???5min 写完。
然后看别的题,发现 D 大概率是一个多项式,AB 都是神秘思维。想了一会发现 D 的 \(60\text{pts}\) 是非常好做的,手动 FMT 一下再卷积做回来就好了,敲了一个板子调调就过了。
然后去看 AB,说实话我并不能评判出来难度。瞪了一会 A,zyb 跑过来说 A 一定左右各一半区间,而我在这个时候写了一个 B 的暴力,发现有一个神奇的操作可以将一边的字符丢到中间。但是不知道有啥用。
继续思考 A,发现套完 dp 就是傻逼题。写写写。
写完没剩多少时间了,继续搞 B。没搞出来,遗憾离场。
下午摆烂,晚上 zr 7 连,获得了 \(100+60+100+40\),B 未知原因挂掉了 \(40\) 分。
9.7
上午是 xyd 上课。上神秘筛法。
下午晚上不是很想写题,摆了一个下午,睡了一个晚上。
结果真正上床睡觉的时候睡不着,爬起来看了月食。
9.8
上午考试。题目比较神秘。
开 A,保证数据随机,疑似是乱搞题目。发现只有 1
个数的因子可能成为答案,暴力做就好了,复杂度能过。
大概一个小时签完到了,看后面的题目。D 非常非常神秘,直接扔,以后都不看这个题了。BC 看起来都挺可做的。
先开了 C。\(k=1\) 是简单的,\(k=2\) 可以拆成枚举每一对点,包含这对点的矩形个数之和,BIT 扫描线一下直接维护,是 \(O(n \log n)\) 的。想到这还挺难的,糊了两个小时。
中间不停地在看 B,首先根据整除分块出度是 \(O(\sqrt n)\) 的,其次答案总和是 \(O(n \log n)\) 的,可能启发我们均摊,但是我不会。
这个时候我们猜测 C 对于 \(k=3\) 也有类似的结论,结果对了。先写了一个 \(O(n^3)\) 暴力。
然后去写了 B 的乱搞,大概就是更新一个点的时候向后暴力找它需要更新的点。然后不知道为啥过掉了大样例,很神秘。
最后一会写了一下 C 的 \(n^2 \log n\) 做法。
总分 \(100+100+90+0=290\)。据说 B 那玩意是对的,但是我不会证。这个题实在不应该过。
下午开了 div1,2 的 dp 题单,div2 都很简单,不想做。看 div1。
这次 div1 几乎是全黑配置,看起来没几个可做题。瞪了一会发现 C 是比较简单的题目,难点完全不在于 dp,而且很好写,先写掉。
然后继续思考别的题目,然而完全没有头绪,看题解去了。发现解法都十分阴间。/tuu
晚上继续瞪 div1 + 幸运。貌似没有什么结果。
9.9
上午分配了讲题。我分到了 B 题,紫题,还不错。
为什么 dcj 和 czy 不用讲题???????
看了一眼我那个题,是个 wqs 二分,赶紧学。向 has 问了一下,发现是对每个二分的东西带一个代价,然后 dp 记录使用的数量,再比较一下就好了。
瞪别的题。A 是矩乘,D 是神秘巨大分讨,F 是一大坨。
下午写了一会 B 过了。然后尝试理解 A 的思想。非常神秘。
晚上写写写然后摆摆摆。
9.10
考考考。
签到题比较简单,但是我不知道做法跑不跑得过去,写了一个 \(O(n^2 \log n^2)\) 的做法。
写了半个小时未知原因没过大样例,调了好久发现二分写错了。
一个小时通过了大样例。然后 D 看起来比较好玩了,开 D。
注意到有一个 \(N=1\) 的部分分,不难通过确定正负号的形式拆掉绝对值,然后可以考虑 dp 使得总和是 \((n-1)\) 的倍数。写写写,通过了 \(N=1\) 的大样例。
然后我就去想正解了,但是想了两个小时还是不会。此时 hjk 跑过来说 B 严格简单于 CD,dcj 和 tml 都把 B 秒掉了,就去看 B。
想了一下写了,发现自己还是不会处理没有限制的数。发现这些东西其实要拉出来最后处理,调了一下在最后 20min 过了大样例。最后写了一个暴力。
成绩是 \(65+100+24+22\),D 题我的打表代码获得了额外的 \(11\text{pts}\)???
A 还是挂了。写的可能实在是不太好。
下午讲题,C 是一个神秘暴力,因为比较边上的数除到最后会消失,所以直接没了,在根号值域里面暴力可以草到 \(74\),再加点优化就 \(100\)。、
D 没讲,自己看了一眼题解发现其实思路差不多了,没有像很仔细,没有玩出来。
9.11
继续写神秘 dp 题单。写了一个题,然后摆了一上午,没搞明白那个神秘爆搜 FWT 到底是个什么鬼,下午听讲题吧。
下午 wannabe 把 xhr 拉过来然后就开始讲题了。
我上去讲了 B 题。重点听了一下后面的题,发现神秘组合数题目是结论然后一大坨数位 dp,然后 FWT 那个题就是把所有合法状态搞出来,然后高位前缀和搞搞就行了。后面还有一车子神秘题目。
晚上摆!继续推了一下丝之歌。
9.12
上午打 zr noip day1。开 A 发现非常弱智!写了。
过了一个全是 \(1\) 的大样例之后去看 B。比较难做啊,去看 C。发现比较不可做,去看 D。发现是 DS,于是回去看 B 了。
想了一下发现可以把路径拆成若干段,每段都以一个最小值为起点,走若干条权值大于等于他的边。然后我写了一个 bfs 来连边,跑 floyd,就做完了。
很快地通过了大样例。看 C。
发现啥都不会。一直想到了下考,期间敲了一个 D 的 \(40\text{pts}\) 暴力下班了。
下考发现 B 挂了 \(40\),D 挂了 \(20\)。有人发现在 D 题 ssb 的优秀数据下,直接暴力可以获得 \(80\) 的好成绩。
以为是我 B 常数太大了跑不过去,结果 lzl 指出我的代码是 \(O(m(n+m)+n^3)\) 的,因为 bfs 是 \(O(n+m)\) 的。草!
下午继续比赛,但是只有 3.5h,不知道怎么赢。
看了一圈感觉全是神秘抽象题目。先看 A 好了。
对着 \(n\) 想了一个小时发现完全没头绪??????????那就只能对着 \(m \le 6\) 想了。
糊了一个容斥,写写写。写完测大样例,挂了。拍了一组小 hack 出来,调调调。发现做法假了????????????????????????????????
此时 1.5h。
慌了。继续胡胡胡,于 2h+ 过了 A。
棒棒糖。还好只有三个题,要不然我根本没法玩。
B 想了 40min 左右,没啥思路,丢掉了。C 很神秘,看起来能够斯特林,先做了。
发现 \(k=0\) 的情况非常弱智。先写掉。然后不知道怎么做了,式子写出来看起来非常不可推。
\(100+0+12\) 遗憾离场,输!
晚上 tml 和 dcj 讲了一下 B,Harmonic 讲了一下他 C 的想法。翻了一下题解发现真有斯特林数的做法,但是我怎么不会倍增优化 dp???
弄了一会发现没人会这玩意,开摆。
9.13
上午多校联考。
开题发现 A 是红题,5min 速杀。
测样例的时候发现题面没有给样例??居然都是文件???
看 B,直接枚举往右上走的步数可以做到 \(O(k)\),开始推式子。
推了 1h 左右推出来了答案是 \(\dbinom{k}{n} \times \dbinom{k}{m}\)。
破防了,这玩意组合意义显然,而且用组合意义直接做是橙题。
服了。
继续看 C,发现这个题除了代码无难度。写写写。
吃了一个半小时总算是调出来了。不放心写了个拍,应该是拍过去了。
这个是或只剩下 1h 了,对着 D 发呆坐牢,最后还是只会 \(30\)。
最终成绩是 \(100+100+100+30\)。lyc 大神把 D 切了,但是 C 挂分了,有点可惜。
下午看了一下 D 题题解,没有很理解这玩意为什么是对的。不管了,继续丝之歌到四点五十,回家。
晚上是 zr。看 A 发现看不懂题?????光速跳题,开完题发现 C 是高考压轴题加强版
?????????????????D 看不懂,先扔一边。
先胡出 B 的一个结论,转成三个限制。发现随便优化到 \(O(n \log n)\),先写掉了。
接下来把高考题做法直接搬上来就有 \(60\)。先写掉。写完回去看 A,终于看懂题目了,写了一个模拟过掉了大样例。
想了一下 C 发现没找到啥规律,看 D 去了。读了三遍题意确认了是子序列,开始写发现过不了大样例????调到了比赛结束,在群里一问发现是子段。草。
最终成绩 \(90+90+64+10\),通过了 \(0\) 题!
然后睡觉去了。
9.14
上午 xyd 模考。开 A 发现是若只,半个小时写完了。
开 B 发现不太能做,开 C 发现更加不能做,先去 B 了。
想了一个多小时想出来一个 \(O(n^3)\) 的暴力 dp,写掉。
写出来发现不对。发现假了,发现改一个状态疑似就对了,继续调,调了半个小时过大样例了。
不打算冲 B 了,看 C。想了一个小时容斥/dp 发现啥也不会。放弃。
成绩是 \(100+0+0\)。后来 xtr 发现 B 的 ML 开小了,重测完是 \(100+60+0\)。
下午讲题发现 B 暴力 dp 套一个 wqs 就是 \(O(n^2 \log n)\)??C 是神秘容斥 + gf,根本不会,太神秘了。
讲课内容是高等线代,主要是特征多项式啥的。学完感觉这玩意挺厉害的,作业还有数学部分作业。
扫了一眼代码作业发现是三个板子,就没管了,躺在床上睡了一个晚上。
9.15~9.21
写的时候已经是 25 号了,这个星期其实除了初赛没啥事,就一起写了。
星期一三五还是上午考试,下午补题和摆摆摆。把丝之歌第二幕基本探完了。丝之歌到了后期数值上来之后真的很爽!!!!
这周专题是计数,开 div1 题单发现 C 是做过的,交了。然后做做做。发现 M 题很有意思!想了一天发现没有头绪,遂看题解。发现这个题转化有点太巧妙了,非常震撼。
星期六是初赛,下午一点左右到了学校坐大巴,但是被门口保安拦住了,交涉了 30s 放我进去了。
在门口看到了 Manki233。大巴还没来,所以就先去了培训室等,看 Harmonic 玩绝区零。过了一会 hjk 过来叫我们上车了,但是到了大门口好像车还是没到,又下雨了。Harmonic 跑回去拿伞了,然后他回来的时候车刚好来了。
在车上发了一会呆就到了。Pretharp 和 Manki233 在笃行楼,我和一车别人都在惟勤楼。在考场门口犹豫了一会要不要进去,因为时间还比较早,进去之后就不能乱逛了。想了想还是进去了。
罚坐到开考。发卷子,看了一眼发现没有 Linux 指令题目了。
前面选择题做得比较顺,然后阅读程序发现 T2 是看过的一道题,感觉稳了。但是 You have no egg!
真的太生草了。
开填程序题,前面两个都比较简单。交互题没看懂在交互什么,但是凭感觉填了一点,感觉还好。
出考场对答案发现最后一个填程序错了一片。因为不会主定理错了前面一个算复杂度的选择题,感觉要完蛋。
不管了,反正 80 应该能有。
9.22
上午原题场比赛,没啥意思。AB 比较简单,C 是神人 8 个树状数组题,D 放了一道大便分讨。
下午开字符串 div2 专题。看了一眼发现 D 是神人 hash,I 是神秘随机化。打开 CF 看到 tml 在 I 罚了神秘 30 发。
写了一下发现卡常,把 map 换掉就过了。
晚上写了一下 duel 的每日一题,然后直接开摆了。
9.23
上午继续写了字符串题单。
下午开了字符串的 Div1,但是感觉没啥意思,不想写。自己胡乱开题去了。
晚上跟 Hoks 开了一把 6 题 Duel。
发现 100 分的题是傻逼,先抢掉了。10min 之后发现 Hoks 把 500 分的题抢了,有点牛的。
想了一下 300 分的题,开写了。写到一半发现假了!!!再想,发现把操作到过来变成删边比较可做,想了一会可以类似拓扑直接跑。很好写,写完就过掉了。
交题的时候发现 Hoks 也在做这题,不过我交的比他早,就抢到了。
发现我想赢必须做 600 分的题。开!
先推题目那个异或的条件代表什么,显然拆位比较,然后发现相同一定可以比出来,否则需要看 \(p,q\),不同则需要继续比下一位。发现这个其实就是 \(a \oplus b \le p \oplus q\),于是维护一下异或最小值,就做完了!
写完发现 Hoks 把 400 分抢掉直接结束战斗了。有点可惜。
这把打了一个半小时,有点爽。
9.24
上午神秘场。
开 B 发现可以用分块草,但是非常巨大难写。早写晚写都差不多,先写掉了。
然后越写越发现不对劲!!!!!!我要对于每个排列维护三个东西,甚至需要手写分讨!!!
但是还是头铁写完了,测样例发现不对。算了,先去开 A。
想了一会感觉不会???tml 说这是傻逼。再想。
哦。注意到决策可以贪,丢到堆里面直接做完了。我是傻逼。
没调直接过大样例了,回去调 B。
花了 30min 调过了小样例,但是过不了大样例。所以写了个拍用来生成小 hack,就这样又调了一个多小时才过。
C 可以神秘乱搞,tml 写了一个随机化直接草过去了,我先对交集做 MST,再对并集做 MST 也过掉了大样例。非常牛!
D 没仔细看,写完 C 差不多下考了。
发现 B 被卡常了,成绩 \(100+80+92+0\)。
9.25 ~ 9.30
待补。
10.1
上午是 xyd CSP-S 模考。
开把所有题都看了一遍,感觉没一个会的。先想想 A。
想了 1h,完全不会?????????果断跳题。
开 B,一眼 \((x+y) \bmod p\) 不变,然后就很好做了。代码也很好写,感觉绿题。
开 C。玩了一下发现函数值是常函数,一次函数和常函数拼起来的,就很好维护了。直接做是 \(O(q^2)\)。
然后可能是线段树维护,但是想了 1h 不会,先写了暴力。
看 D,玩出来了一个决策,但是直到下考都是如懂状态。不会。
下考之后 BC 均挂,\(150 \to 40\)。破防了。
发现我在 \(2^k<p\) 均无解之后输出了 -1
。骂骂咧咧地改完代码之后通过了 B。
C 瞪了一会没发现啥问题。事已至此,先吃饭吧。
下午是计数 dp,先放了五个宝宝题速通了一下,然后开始上强度,讲了几个紫黑。
晚上写了一会 xtr 的数学作业,还是感觉好难。
然后跟 tml 打了 codechef。题目都比较简单,后面有一个大细节题目不想写了。睡觉。
10.2
模考。看了一遍题发现 AB 均为弱智。写了。
然后开 C。瞪了一个半小时没有任何成果,打表。对着数列拆了半天发现了一个比较厉害的规律,写完发现是对的。交了。
开了 D,但是最开始看的时候看错题了。想了半个小时一点都不会之后反复看了好几遍题面确认没有问题,又想到几乎下考,水 M 才告诉我我看的那个题面是错的。
但是改了之后还是不会。听课吧。
下午先讲了一下题。D 大概就是建出 Kruskal 重构树之后在上面 Dsu 一下。
今天讲了比较牛的组合计数。但是好像这方面题目不是很多,所以例题有比较多的部分都是做过的。最后一道题依旧是 AGC 的神秘不可做黑题。老师最后还多加了两个题单并附加讲了一些题目。
10.3 ~ 10.7
比较千篇一律了,都是上午考试,下午讲课。
说一下这几天考试的战绩:
AK 了 10.3 的模考。
在 10.4~10.7 的模考中没有任何一场过了 A 题。
讲了很多比较牛的专题,可惜晚上全部在睡觉没有写。
10.11
早上六点起床然后吃了碗粉直接去高铁站了。在检票口看了一圈发现我是第一个到的。
随后 Pretharp 和 tml 都到了,我们队算是凑齐了。
这次 HNCPC 在衡阳,不是很远。高铁半小时就到了。下车之后先坐了公交去了湖南工学院签到,然后打算坐公交回酒店。
搞笑的是我们十几个人在公交站牌背面等车,然后等了好久回头看一眼发现要坐的车刚好走掉了。然后教练直接让我们打车去酒店了。
去旁边面馆吃了饭之后就去热身赛了。热身赛我们直接坐空调底下,很舒服!
A 是 A+B Problem。光速写完。
B 是神秘计算几何,应该能二分。扔给 tml 看了一眼说可以做。
C 看 \(10^{12}\) 直接根号。我和 Pretharp 先把题意翻译完扔给 tml 看了一眼,他说很简单,直接就开始写了。我在旁边理了一下 B 的细节。
简单调试之后 tml 通过了 C,我去写了 B。计算几何真的太难写了,有很多细节。我在写的时候 tml 和 Pretharp 在旁边下棋,最后拉了 tml 过来推了一个式子,于最后 3min 极限通过。
回酒店之后发现 zr 马上开始了,就点了个外卖当晚饭了。