CSP2022 游记
Leonid
·
·
个人记录
继 CSP 2021 的 Hello CSP 2022 之后,一年到了。
先赞后看(
2022-8-忘了
捐钱。
2022-9-1 \sim 2022-9-17
每天晚上作业都好多 /yun,感觉都没啥时间复习初赛,而且周六上课浪费半天睡觉时间。
上学期期末考才考了年级 rk112,难绷。(所以什么时候把政治历史删了
写了一本通里三套 tg 的初赛模拟,71 88 83.5 /fad。
最近感觉压力好大好焦虑,学习菜周围同学又卷,oi 焦虑拿不到奖,然后还有一些生活琐事搞的心好烦。经常感叹时间过的很快。
考完就退役力。
还是那句话 unsigned long long CSP2022_R1_rp = -1;
2022-9-18
该来的还是来了。
早上 7 点出头就自然醒,然后就吃饭和看手机。
8:45 左右就到 js 了,想起手表放在教室没拿,于是跑去教室拿手表,顺便拍了两张照。
早上是 pj。
进考场,然后是一堆乱七八糟的没用的流程,过一遍场就发试卷了。
js 学术厅的空调什么时候可以换,刚进考场 20 min 左右满头大汗根本看不了题 /yun。
看了一下单选,发现热的要死,心静不下来,然后就乱做一通。关键是今年的单选特毒瘤,出题人都是些什么寄,总是出些概念题有啥用。
结果第一题就看漏了“没有”俩字。
9:40,哈夫曼是什么东西(
9:45,深搜是栈实现吗,而且栈没法实现队列是对的吧,这好像四道都是对的啊(
9:47,双向链表?随便搞一下不就好了。不对啊这个 C 和 D 不是一样的吗(
9:50,$O(n^2)$ 的排序应该都是稳定的吧(
9:51,本质不同子串不就是 $C_5^2$ 减掉相同的吗(
然后选择就错了一大堆。
接下来看阅读程序。
T1 就是烦人的位运算,好不容易算半天终于搞出来。
刚看到 T2 我的内心是拒绝的,这牛魔出个大递归和三层循环的大 dp,鬼能写得出来。随便塞了几个答案然后去看 T3 了,等下再来模拟。
粗略看了下 T3,发现这不就是一个很 sb 的牛迭?粗略算了一下然后解决。
然后是完善程序。
感觉今年的完善程序就是用来送 30 pts 的,这我刚学 oi 都能填对。
T1 是个很 sb 的根号分解质因数,5 min 解决了。
T2 码量很唬人,看了下题发现其实就是一个 bfs 的板,10 min 解决了。
写完剩大约 30 min,返回来看阅读 T2。
不确定的题目有 22 和 27,22 的递归比较次数太恶心了,于是决定先推 27。
根据上面 26 推出来的结果可以推广到 m > 2 的情况,按着 dp 的式子可以推广到 m=5 的时候,会发现此时 h 数组的分布情况如下:
1 2 2 3 3 3 3 4 4 4 4 4 4 4 4 5 5 5 5 5 ......
观察可以发现,这串数字中有 2^0 个 1,2^1 个 2,2^2 个 3,2^3 个 4,2^4 个 5,……。且 m 再大 h 数组也不会发生改变,证明显然。
于是算一下 \operatorname{log}100 就好了。
然后看 22 题。
容易发现计算调用 min 函数次数可以转化为记搜式子,然后就硬算,最终结果是 480,与题意不符。
检查了一下其他题,发现阅读 3 的 31 当时没细算,算了一下发现不会溢出,于是把答案改掉了。
11:30,结束。
中午和 hkf ldm cjy 在 js 对面的来去吃饭 /se。
在小图灵测了一下早上的 pj,居然有 86 pts,看了一下发现阅读和完善全对,单选错 7 道,乐。
下午又来 js(其实就是过个马路),然后和 lsy 神仙面基。
进考场又是乱七八糟的考前须知什么东西的,然后再次吐槽学术厅的空调。
然后看单选。
9:30,第一题不是去年才出的?肯定选 ls(
9:30,这第二题是什么意思啊,看不懂,蒙一个(
9:33,我看是我的脑子受到宇宙射线了吧,怎么什么都不会(
然后单选在半算半蒙中写完了。
阅读第一题看着像 kmp?但好像不是。看看题发现好像懂了又好像不懂。时间复杂度在那道在 A 和 D 之间改了 5 遍,结果还是错了。
阅读 T2 好像是基数排序,但是我不会,蒙一下。
阅读 T3 是进制转换,但是整数模负数怎么算。
下来看完善程序,去年的完善出了个大数据结构,蒙都难蒙(
T1 是什么东西啊,又不会,怎么什么都不会,可以重开了。
T2 记搜?看了一下还真是。大水,秒了。
所以整张卷就最后一道大题最简单了吧(
晚上测了下小图灵,然后发现
那不就稳了(
所以接下来放平心态,好好摆烂了(
**退役**
## 2022-9-24
发烧 38.4,然后 sb js 周六还要上课,于是请假逃掉物化政史在家打挖土机杯。
## 2022-9-26
学校老师又要提前上课又要拖堂,最后一节班会课的时候整个人差点不省人事,整个人在做剧烈分子热运动,周围空气因为热传递且比热容较小迅速升温。
到家测了下体温 38.4,在煎熬中吃了饭然后去睡觉了。
晚上 8 点多醒来更难受了,测体温发现涨到 39.1,然后整个晚上就是倒在床上和吃药。
## 2022-9-27
早上起来测体温又是 38 左右,然后又没去学校。
喉咙痛的要死根本说不了话。
只有不能说话才知道自己平常话有多多。
查分,结果一直都是 502 or 504。
## 2022-9-28
查到分了,J 88 S 77.5,同小图灵。
## 2022-10-20
进行一个最近的一些事情的记。
一阶考前一直在打 oi,然后语文英语政治历史全部没背,而且请三天假,挂大分。672 pts 班 rk21 年级 rk125。
然后就摆烂。
今天上午得知了获得了 js 之星,然后体育课打篮球被同学手表砸到指甲后不省人事爬来机房。
## 2022-10-28
早上九点多到了龙湖宾馆,然后就上车。车上看了一下区间 dp,然后摆烂。中午没吃饭,吃面包。
到东莞之后就分酒店,和 hkf 同间房。然后摆大烂。
晚上打了两把斗地主和一把三国杀,~~然后窜了三次~~,然后九点多就睡大觉。
## 2022-10-29
昨晚好像没睡好,早上起来有点不舒服。~~然后又窜了一次~~。
早上坐车的时候网易云放**好日子**。
然后来考场,走一遍流程就进~~厂~~场罚坐了。
A 是 sb 题,考场看到的时候先用 5 min 打出来了,~~比去年好多了~~。
B 是小数学题,考场推式子,推完发现就是 $m=n-d \times e+2=p+q$。然后忘记保证 $n=p \times q$,以为有 spj,所以就直接输出 1 和 m-1 了。然后测样例的时候发现无解没判到,重新看了眼题,然后发现又眼瞎。
然后考场就在想已知 $p+q$ 和 $p \times q$ 怎么求 p 和 q 的值。5 min 后想起之前学过韦达定理,可以将 p 和 q 转化成形如 $x^2-(p+q)x+p \times q=0$ 的方程的两个根,然后就是判是否有正整数解就行了。
求 $\dfrac{-b \pm \sqrt{\Delta}}{2a}$ 的时候以为 `sqrt` 里面不能放 `long long` 自己写了个二分求根号。
C 垃圾大模拟,考场边写边骂,不予置评。
D 是个很显然的 dp,考场一开始没想出来。结果考试剩 5 min 发现就是一个求最长不降子序列加上一个 k 的限制,也就是 $dp_{j,k}=max\{dp_{i,k-dis}+1\}$。然后就速度与激情打完了。
然后 J 就打完了。估分 100+100+30+100=330。
中午吃饭的时候听我校的初二初三好像都打的不错,感觉今年线会很高。
下午两点多又坐车去考场,然后就一直想着打寄怎么办。
A 一眼丁真是图论题,但是我不会,所以看没一会题就去把 Dijkstra 板子默出来。然后想着打暴力,发现可以直接枚举 ABCD 四个点,然后无脑判长度就行了。
过了一会发现我在四重循环里面套 Dijkstra 也就是说复杂度是 $O(n^5logn)$ 级别的,还不如打 Floyd,然后就改了 Floyd。
B 是思维 + ds,每个人可以分三种情况:只有正、有正也有负、只有负。所以分 9 种情况,分别把每种情况的答案列举出来,最后发现就是要维护两个数组的区间两种最值与 a 数组的绝对值最小值。
先打了个 60 的暴力,然后想着如何优化。一开始想到区间最值是 st 表,然后发现不会写,然后又想到线段树,发现又不会写。过了 1 min 后看到数据范围 $1 \le n \le 10^5$,果断写分块了。结果写完发现写炸了,后来看 C 和 D 之后发现不会就回来死磕 B,然后就给我查出来了。
后来想维护绝对值最小值的时候发现不知道怎么维护,好像会又好像不会,所以就打了 85 pts 然后去打后面的暴力了。
然后是先打的 D,发现树上路径唯一,也就是可以记路径之后去做 dp,但是我不会 LCA+记路径,所以就无脑打了 Dijkstra 记路径然后做 dp。
dp 的时候把 `seq` 数组写成 `val`,导致调了好久,然后调试的时候写了句调试输出语句(铺垫)。
C 题的题目太长所以放最后写,看完题目之后就发现其实就是维护一个有向图,每次操作后判断从每个点出发是否有环并且每个点的出度有且仅有一条。于是就打无脑 spfa 判环然后直接判就行了,在 spfa 的过程中判断当前边是否被删掉即可。然后就有 15 pts 了。
估分 40+85+15+28=168。
考完出来就说小图灵可以查 J 了,然后查了发现 100+70+75+100=345????????????????B 挂大分然后 C 送大分??????????????后来查了下代码发现 B 是二分根号的问题,直接用 sqrt 就 A 了。。。。。。。。。。。。。。。。。。。。
然后晚上 S 代码也来了,luogu 测了一下发现 D 爆零????????????????????然后也不知道是什么原因。结果 hkf 看了眼代码看到我调试然后注释掉交一发就有 28 了。。。。。。。。。。。。。。。。。666666666666666666666666666666666666典中典,连着挂两年。
然后就去打三国杀和斗地主和 uno。
## 2022-10-30
早上突然想到维护区间绝对值最小值的写法,本质就是维护最小正和最大负,所以维护最小正发时候把负数全部变成正无穷就可以了,最大负同理。
在酒店吃完早饭在大堂集合然后坐车回去了。
晚上发现 S T3 把判出度和判 spfa 能 15 -> 40。。。。所以是 B 挂 15 pts,C 挂 25 pts,D 挂 28 pts。。。。。。。。。。。。。。。。。。。。
208 -> 140
## 2022-11-7
https://www.luogu.com.cn/discuss/525964
https://www.luogu.com.cn/blog/Frisk-LSZ-qwq/post-6-post
ccf 是懂出数据的。
J 预期 100 + 70 + 50 + 100 = 320 -> 实际 100 + 0 + 50 + 100 = 250
S 预期 40 + 85 + 15 + 0 = 140 -> 实际 45 + 85 + 15 + 0 = 145
真的退役了,学了两年 oi 普及组才打 250,我看我像个 250。