CSP-S 2023
考点在自己学校,耶。
Day 0
很菜。好绝望。失眠到 1:28 才睡。妈的。
Day 1
妈的 6:05 就醒了,直接润机房,抽屉里有一块几天前买来忘了吃的好丽友派,抹茶味的。想起来小的时候第一次吃好丽友派,看他包装,还以为是饼干夹心(那种甜甜的,像柠檬苏打饼干那样的夹心),吃了之后才发现是蛋糕棉花糖。草。和我的人生一样 phony,其中“人生”特指 OI 生涯。
上午在机房看 B 站,放松疗法。
妈的好菜。妈的。
好紧张。
13:43 准备去考场。
考场门口剽了高三学长(一瓶)(多的)水。(这里打括号是说明它是两个定语,汉语真美妙)
进考场。
妈的最后一年了。妈的。
14:57。监考员转身写密码。妈的启动!
配置完喜欢的环境,开题。
T1 嗯嗯先放放。T2 还行。T3 妈的这他妈是啥我超 BYD 每年都要出一道恶心人是吧。T4 感觉很可做。读完题了,差不多 14:40。
我超 T1 怎么做,喝一口水,哦 5 位数,哦 $n\leq 8$ ,那没事了。敲出来了。妈的怎么错了,哦读错题了。OK 过了,看一下时间:妈的怎么 15:00 了。
看看 T2。诶那不是直接一个栈维护个 DP 不就行了吗。令 $f_i$ 为以 $i$ 为结尾的最短的合法串的左端点,这玩意用栈 $\mathcal{O}(n)$ 飞过去,最后再看看有多少个连续的。114!514!好的样例一过了。妈的样例二怎么错了,喝口水。看看 game2.in
,一打开发现一长串 $\mathtt{aaaa\cdots}$ ,草知道哪里错了。搞个简单版看看效果:
8
aaaaaaaa
应该是 16,跑出来是 10。喝口水。发现是左端点的位置,以它为右端点本来也可以取它的左端点的,但这里跳过了,就少了它的贡献。那就再设一个 $l_i$ 表示以 $i$ 为右端点最长合法串的左端点;为了方便统计答案,再设一个 $\text{cnt}_i$ 表示这几个连续的最短合法串的数量。然后写,样例还是错。喝口水。改改改。然后发现是转移的问题,再类似失配指针那样设一个 $\pi_{i,j}$ 表示在以 $i$ 为结尾的这几个连续最短合法串中最后一次把 $j$ 作为右端点的位置。然后写,过了。这个失配指针也很好维护, $\mathcal{O}(26n)$ Rua~过去就行了。好的好的样例过了,看时间,刚好 16:30,一个很普通的一小时一题的配速www。
看 T3,哇妈的真不想看。要不先开 T4?算了就看一眼 T3。喝口水妈的水怎么喝完了。ok 完全理解完题了。感觉很无脑。妈的想上厕所。举手,妈的怎么有人在我前面。再看看题。好的他来了,我可以去了。现在是清华大学沉两舟上厕所时间。上完厕所神清气爽。开打。差不多 17:10 写完。错了。挖草这需要调多久?开调!
妈的怎么 18:20 了。怎么还没调完我超。妈的。太急了,开始用上 windows 了(继续用 Linux 怕来不及把 public 文件夹的代码移到 D 盘根目录)。
18:24 改正了一个错误,但是还没过样例 3。
18:25 小改,没过样例 3。监考员已经有动静了。
18:26 fc:找不到差异
多年以后,面对 CSP2023 T3 的屎山代码,Jayun 将会回想起 fc 找不到差异的那个下午。
Day 3
冷静分析:T1、T2 简单题花费的时间还是太长了,可能需要多做 CF 的 Div2?T3 不好评价,但是调了 2h,还是长,但这种大模拟应该没啥办法。