第一轮
题出得挺好,终于没有鬼畜的CCF赞歌了
考得还行
复习了Tarjan并伪证了一遍,然后颓废了
安利E17大失败
放了几十个满贯
给某同学科普了一些不好的东西,现在他好像自闭了 我谢罪
继续肝Tarjan然后想自闭了
于是写了个左偏树,调自闭了
下午看了今年的博客 发现鸽子本性暴露无遗,跟去年完全没法比了……
看了几篇题解,越看越内疚,就关了
不敢写下去了
(直接跳到发题)
密码认真思考……emm……
打开题,一股表达式树的气息扑面而来
T1啥玩意啊
T2啥玩意啊
T3啥玩意啊
……
仔细读题
T1好像是模拟
T2树上括号匹配子串个数?
T3……?
8:30开始写
把构造方法都告诉你了,模拟无误……
模鬼啊, 2 64 2^{64} 264
下意识地转成二进制发现是个SB题,切了
8:45
T2一眼DP
用回文树的思想乱搞一下……
然后越推越自闭
……先考虑链的情况
……发现没什么区别
然后冷静下来,重新推一波,推出了一个 O ( n 4 ) O(n^4) O(n4)的优秀DP做法
开始思考括号序列的性质
情况复杂是因为两个可以拼成一个
然后发现如果把一个不能拆分的合法子串称为一个"基本串",那么一个位置结尾最多有一个基本串。
证明:
反证法,设某个位置结尾有两个基本串,设为 S S S, T T T,其中 ∣ S ∣ ≤ ∣ T ∣ |S|\leq |T| ∣S∣≤∣T∣
由基本串定义, T T T的前 ∣ T ∣ − ∣ S ∣ |T|-|S| ∣T∣−∣S∣位一定不合法
考虑括号序列的求法:将每个字符入栈
因为 S S S合法,所以在栈中会消完,所以剩下的是 T T T的前 ∣ T ∣ − ∣ S ∣ |T|-|S| ∣T∣−∣S∣位,和 T T T合法矛盾。
然后用栈维护基本串在哪里,记录栈顶和栈大小,回溯的时候还原
写出来一发过小样例美滋滋
……然后WA了中样例
造一组小的测出来不对,调试发现栈顶写成了栈大小……
修改后过了中样例
测大样例
激 寒 营 业 不 可 避
什么垃圾样例啊
……然后爆栈了
……然后发现忘了扩栈命令
于是开虚拟机测过了
丢了不管了
9:40
T3一眼不可做
……暴力10分差评
想了个显然的贪心,然后显然挂了
思考了一下完全没思路,10:20
骗分吧
先写个 O ( n ! ) O(n!) O(n!)
链的情况好像可以直接贪心?
写一波发现很精神污染
11:00
大脑一片混乱,于是上了个厕所(雾)
回来马上发现可以分治(大雾)
写出来不停WA,被排列过去映射过来搞晕了
把条理理清之后过了自己写的样例
……再测一组WA了
心态崩了,不写了
11:30
开虚拟机编译通过
……然后想起了扩栈命令
水过剩下30min
预计100+100+10=210
出来发现全世界都210
由于写这篇游记时隔太久,所以忘了很多细节
打开题面,一股硬核的气息铺面而来。
T1阅读题 读了半天读懂了
T2显然不是DP就是神仙贪心
草样例三爆ull了啊
T3断一条边求所有重心标号和
感觉很可做,但就是不会做
这时
对于 t y p e = 0 type=0 type=0的所有测试点,保证最后输出的答案 ≤ 4 × 1 0 18 \leq4×10^{18} ≤4×1018
你真棒
怎么比昨天还难啊……看来错怪D1T3出题人了
开始肝T1
……相当于每行最多选1个,每列不能过半,贡献为选的所有数的积,求总贡献
显然DP
数次读错题,一直在想怎么把所有列的信息压缩,怎么都退不出来
到9:30
……10点钟想不出来就打暴力吧
脑子一闪,注意到“不能过半”,这个性质一直没用
会不会有什么特殊性质?
不能过半什么意思?就是比其他加起来都多
也就是最多只有一列过半!
然后容斥就可以了!
设 f ( i , j ) f(i,j) f(i,j)表示当前在第 i i i行,最多的一列选了 j j j个的方案数
写了一半发现完全假了,要确定哪一列最多
设 f ( i , j , k ) f(i,j,k) f(i,j,k)表示当前在第 i i i行,第 j j j列选了 k k k个的方案数
写出来死活过不了样例
唉……?
好像某一行可以不选
可是不选的不统计入总数啊
于是极其硬核地设 f ( i , j , k , l ) f(i,j,k,l) f(i,j,k,l)表示当前在第 i i i行,第 j j j列选了 k k k个,一共选了 l l l行的方案数并推出了极其硬核的方程
i i i滚一下就可以了 复杂度 O ( n 3 m ) O(n^3m) O(n3m) 可能卡得过去?
然后写出来极其硬核的代码,还是过不了样例
10:00
上个厕所,回来一眼就发现下标输错了(弥天大雾)
然后顺利过了所有样例
然后造一组极限数据T了
重新算一下,过得了才有鬼了……
于是只有84分 感觉很近了,但就是想不出来
10:30 弃了
后面只能暴力了……
T2推了一下毫无进展,于是直接 O ( n 3 ) O(n^3) O(n3)dp艹36分走
T3直接暴力拿40,然后链似乎很好做 共计55
(实际上后面完美二叉树也水得要死)
预计84+36+55=175
那我上不了400啊……
粗略看了一下好像水不了多少分了
于是Linux编译测空间走人
–End–
这分应该毫无悬念了,各个数据测出来都是385
最终成绩也是385了
以下内容有大量OI无关意识流文字,谨慎阅读
文化课生活很充实,很空虚
两周补完所有理科,还要补完所有作业,平时的还不能落下
尽全力搞完生物却还是跟没学一样,考试几乎每道题都触及知识盲区,每涉及一次就把相关内容写书上,然后之后的考试永远钻不会的。
还有几篇背哪里都不知道的文言文,无从下手的英语单词,以及不明觉厉的地理,政治历史只能自我安慰。
生物的伪半期考试取得了59分的好成绩,叶绿体基质,胸腺嘧啶脱氧核糖核苷酸,结合水,丙酮酸——似乎找回了OI的刺激感——太阳风,东南风,磁暴,黄赤交角,皆白衣冠以送之,哀怨又彷徨,然后知松柏之后调也,adaptation……
文化课并不难,但也不简单,但真的很简单,但真的很难
几年前支撑我的是OI,之后是OI圈,之后是各个网络小众亚文化
OI生涯虽然没有结束,我仍然热爱它,可再也不会拼死拼活了,也不会学全世界没人会唱的OI歌——包括创作者。
本以为OI圈十分友好,后来发现小鬼无处不在
寝室里开始杰哥不要,猛男新宝岛,我逐渐意识到亚文化也有衰亡的一天。可他们对这样的话题似乎毫无兴趣,或许认为我是傻子——或许我本来就是。
现在支撑我的是什么?我也不知道。
有个笑话,你的几亿个细胞全为了你一个人而拼死拼活,你不努力对得起它们吗?
似乎很滑稽,可这可能是我的真实状态。
我愿意无限重复停课的日子——或者现在学文化课的日子也不错——没有压力,但有目标——没什么CSP,也没什么期末考试——一切都不会改变。
公无渡河。
公竟渡河!
渡河而死;
其奈公何!