CSP-J/S 复赛游记

· · 生活·游记

Day 0

考虑枚举从学校出发的时间(

周五(即 10.25)中午从学校出发,因为是从抚顺到大连,再加上开车,所以在车上睡了四个多小时终于到了大连。

到酒店之后想着复习复习算法,结果感觉都会(

Day 1

早上 4:53 起来,但是一点不困(

最后酒店开公交把我们挟走了(大雾逃)

CSP-J

上来就是 0.5h 延迟大礼包(

而且只有第五考场延迟,所以别的考场都走完了我们还在写(但是我以为不延时,直接打乱节奏了)

发现第一题太水了,2min 拿下。

其实不能怪我太谨慎,因为去年的 小苹果 O(n\log n) 竟然写成 O(n^2) 了QAQ

后面 T2,T3 也是直接有思路

T4 感觉和去年没什么区别,都是图论,考场想暴力建边最后发现没有暴力写得快……

最后附一下解题思路。

T1

考虑用 set<string> 维护去重,拿 52-set.size() 就可以得到满分

T2

模拟 k 次操作即可

T3

刚开始想成数位 dp 了,但答案太长(其实也可以用字符串 dp 但没想到 orz)

然后输出一些小数据会发现后面几位都是 8,正确性是显然的

最后特判一下 n\leq10 和每个数字开头与 n \bmod 7 之间的关系乱搞就 A 了(

T4

写了 5pts,没啥可说的。

CSP-S

经历了上午的惨败,我决定下午继续

T1 比较简单,但后面就有点崩了。看一下我的解题过程吧。

T1

用两个优先队列(小根堆)来分别维护活着的怪物和能进攻的怪物,O(n) 模拟一下就行了

T2

逆天思路(

先把特殊性质 A 和暴力写了,然后没发现 A 改一改就是 B 于是痛丢 20pts

T3

个人觉得答的还行的一道题。

考虑用 dp[i][j][k] 表示前 i 个数,最后一个红是 j,最后一个蓝是 k 的最大值。

然后发现 j/k 中有一个就是 a[i],强制规定 j\leq k + 滚动数组秒了(

T4

第一次考 S 组就看见黑题了,不得不说 CCF 太善了(

直接输出 1 听天由命。

最后连夜赶回 home

SUMMARY

感觉总体考得比去年强多了,但还是有点遗憾(指 J-T4 和 S-T2)。总分 305/205,应该能拿 2x1=,但 S 组感觉比 J 组考得强

现在希望全国 90\% 的 S 组选手爆 0 然后我直接拿到 7 级勾(