CSP-J第二轮游记

· · 个人记录

前文

2022年CSP落幕了,希望大家都能取得满意的成绩,不辜负自己一年的努力。

考试之前

本蒟蒻只学了6个多月的 OI,其中很多时间还被文化课占用了,所以我学6个月可能只是高中生辛苦学习3个月。我只报名CSP-J(不够自信),但j组的考点说多不多,说少不少,我还是得要认真复习。

距离考试还有6天

周末在家刷题,在练习小模拟,比如公交换乘,来练练手。然后去巩固了 bfs,各种技巧(双指针之类),然后去打学校统一的比赛。

5天

刷二叉树,洛谷题单,高精度我是没有准备,陪我学的大佬 @SnapYust 他说J组不会考高精度,本着过来人的经验,我信了(其实是偷懒)

4天-倒数第二天

考试临近了,每天都抽出很多时间去搞,主要是dp,我dp差的一批,方程不咋会推,但我硬着头皮还是去做了几题练习。在第四天第三天时,我学了 Dijkstra。这是@SnapYust 看着我,突然想到那是S组的内容,于是也赶紧去学了,后来我发现J组考纲里面没有 Dijkstra,就没有再学了。

试机

这次是去二中考场,二中里面没有装 NOI Linux2.0,我问过他们那里的人,他们不想装,Windows10 下面只有Dev-C++,NOI Linux2.0 功能丰富又是评测环境,有点小不满。当然,机房里面某些人不怀好意,在盘里面偷偷放了树状数组的模板,后来被清除了。

正式考试

两个字:紧张。

我刚刚在 Dev-C++ 里面搞了代码模板和文件夹,PDF就下来了。

第一题:乘方

这道题目容易过,有人用快速幂,有人用 pow 函数,我用循环语句,但是忘了底数是 1 的特殊情况,洛谷自测 90 分。

第二题:解密

鉴定完毕,一道数学题。

题面我就不多说了,要求解。

e_i \times d_i = p_iq_i - (p_i + q_i) + 2

可推出

p_i + q_i = n_i - e_i \times d_i + 2

这不就是数据范围的 m 吗?果然不用高精度。

于是问题就变成了 p_i + q_i = n - e_i \times d_i + 2p_i \times q_i = n,求 p_iq_i

我考试时就兴奋了,一元二次方程实锤了,我六年级时正好学过,于是就做出来了,洛谷自测 AC。

搁着我还写题解了。

第三题:逻辑表达式

一看就是大模拟,完全没有思路,我只能去水那个 前两个长度为 3 的测试点,正好10分。然后就不想做了。

第四题:上升点列

这是个什么题目?刚开始我搞不懂是什么,搞懂了之后也不会,难道是 dp?但SnapYust 也没有推出方程,而是用树形dp 的思想,我只能去水 k = 0 的测试点,洛谷上面喜见彩虹。

估分下来了,205分,一等很悬。update:福建一等

最后,我听 @SnapYust 说,S组三题有涉及到 Dijkstra 和 Floyd,三图论,他也承认他分数中有我的帮助。

然后我图论只会 Floyd 和 Dijkstra,因为不自信,我没有报提高组,这就是命运把,只有等明年九年级再来了。

总结

2022年CSP就这么结束了,有些省份包括我们福州有疫情取消了,我们的考点改到了市二中,能走到这一步我也荣幸,我还有三年,这一年希望掌握提高组的,明年就能去打了。希望给位出成绩的时候,脸上都洋溢这笑容。