HUSTFC 2023游记+补题
前情提要:
好好好,我退役后又复活了
和两位Cu大佬组了个队打暑假多校,然后ICPC网络赛被薄纱了两场
为了奖品HUST唯一的新生ICPC名额打的新生赛
还拉了个高中的无辜同学来接受阿克曼的制裁,我有罪
比赛:
开场开到了K,进行一个莫名其妙的拼手速,4min过了,但是输了几秒没拿到一血
然后看榜有人过了N,于是又写了2min把N签了
于是志愿者给我发了两个气球,还感叹了下我写的好快😇
然后我就蒙蔽了
为啥我感觉啥都挺简单,但是我啥都不会
看着好多人过了C,结果题目都看不懂
大概过了15min发现A可以用单调队列过去,于是写了一发过了
然后猜了个C的题意和结论,也过了
然后我又蒙蔽了
原来以为I是快速幂,但是推不出式子(考完后发现还真是快速幂,那我是怎么看着递推式没想到矩阵快速幂的?)
看了一眼F,觉得挺可做,调了一会,交上去WA了
啥情况?哦原来交错代码了,nmd。过了
感觉I似乎可以记搜?写了,跑得飞快,过了。考后才发现复杂度是对的
看好多人过了F,是个博弈论。前面题看错了,以为覆盖的是点,莽了个奇偶分类上去,WA了
后面发现覆盖的是边,那感觉后手不会败,而且最后一次操作可以覆盖两个格子,那就蒙个后手必胜上去吧。过了
然后彻彻底底的蒙蔽了
把剩下的题目除了GH,大概都看了一遍,结果E看错题目了,以为每个点都有两条边不是一堆环,不会做。
J以为可以直接上hash,写完后发现有问题,彻底不会了
最后下定决心看了G,发现可以裸的树剖(虽然n=1e6),于是写了,交上去,又WA了。为啥?TMD又交错代码了。过了,拿到了第一个一血
这时候是219min,觉得应该还能写点题,发现E是个NTT,把板子抄上去,结果抄错了,后面改了一下过样例了
交上去,又又又WA了。交错代码了?没有。为啥?
哦我没判k%4!=0,加上去了,还是WA
哦我k多除了个2,改了,还是WA
不会了,一直交一些无意义的改动版,直到结束都不知道为啥错
最后9题rk4,我们队三个人都9题,被11题的rk1薄纱,痛失ICPC名额
压线拿了个键盘,好迷茫
补题:
想退役,结果发现自己不是高中生了,退了干啥……
I 序列配对
看了下I,原来NTT会把原来是0的数组转成非0,但是我赋值的时候只赋了偶数项,于是寄了
然后朴素NTT好像不行,加个堆维护启发式合并就行了
H 狭义线段树
对每个叶子节点维护3操作询问的值,则3操作即为区间求和
2操作容易发现维护的叶子节点时连续的,找到左右端点即可
1操作可以将修改的节点按照层分类,这样能保证不重复覆盖
非最深层的可类似2操作维护,最深层的叶子节点单独建一棵线段树维护
TMD最后两棵线段树答案相加忘记取模了,我是什么牛马
J 基因编辑
考场上只想到hash,但是不会判重
出来背队友一把点醒说可以用trie判重
所以只要一正一反建两棵trie(或者反的用hash也行),统计答案的时候先枚举k,在trie上跑,只统计前缀匹配最长处的情况即可
update on 10.27: 好好好,拿到了ICPC合肥的名额,狠狠开卷!