CSP-J/S 2023 游记
FurippuWRY
·
·
生活·游记
2023.09.08-14
没到 12 点不睡觉。
2023.09.15 day -1
#include<bits/stdc++.h>
using namespace std;
unsigned long long the_RP_of_Furippu;
int main(){
while(1){
the_RP_of_Furippu++;
cout<<the_RP_of_Furippu<<'\n';
}
//Always continue;
//Never break;
//CSP-J/S 2023 RP+=inf
}
满脑子的 $\text{RP++}$。
本周第一次 $0$ 点前睡觉。
## 2023.09.16 day 0
$\huge{\text{CSP-J/S 2023 RP++}}
在初中部集合,一开始不知道,跑到高中部机房去了。
$\text{CSP-J/S 2023,启动!}
\huge\text {CSP-J 9:30-11:30}
和 @\text{Register\_int} \text{cjld} 一个考场。
卷子印刷质量比厦门一中还烂。
热死了,不开风扇,不开空调。
监考老师把 $\text{CCF}$ 念成了 $\text{CFF}$。
~~有一说一监考老师还挺帅。~~
$\text{T3}$:不会洋葱,按照结构体的用法选了 $\color{52C41A}A$。
$\text{T4}$:不会链表,一眼丁真排除 $B,C$,对比 $A,D$,$A$ 更长,选了 $\color{52C41A}A$。
$\text{T7}$:按照写政治题的习惯,“只有”二字太绝对了,选了 $\color{52C41A}C$。
$\text{T10}$:不会哈夫曼,于是找规律:$a$ 和 $b$ 的频率都是一位数,$c,d,e$ 的频率都是以 $1$ 开头的两位数,只有 $f$ 是四十多。$A$ 选项中,四位数,四位数,三位数,三位数,三位数,一位数,一一对应,直接选 $\color{52C41A}A$。
$\text{T11}$:一开始想了半天,选了个 $A$,然后 $\text{xmyzwls}$ 直接来改答案了。$\text{SB CCF}$,就改 $A$ 和 $B$,那直接二选一啊,选 $\color{52C41A}A$。
$\text{T12}$: 拓扑排序是啥,不知道,选 $\color{E74C3C}C$。
$\text{T14}$:傻逼组合数学,错了。
$\text{T15}$:但凡用过电脑,都知道 $\text{html}$ 不是操作系统。
$\text{T16-20}$:踏马的没考虑会输出 `nan`。
$\text{T21-26}$:自己造数据,觉得 $\text{T22}$ 合理就打了勾,$\text{T26}$ 选了 $\color{E74C3C}C$,结果踏马的不是最长公共子串,是子序列,两题错了,艹。
$\text{T27-32}$:还好,不难。就是踏马的脑子岔了,$\text{T30}$ 选了 $\color{E74C3C}D$,痛失 $4$ 分,cnm。
$\text{T33-42}$:乱做的,$\text{T33-37}$ 凹了半天,$\text{T38-42}$ 好像 $\color{52C41A}AC$ 了。
中午吃的阴间厨房,回机房摸鱼。
和 @[$\text{yyz\_100110}$](https://www.luogu.com.cn/user/926838) 发 $\text{QQ}$,我发了一张 @[$\text{Register\_int}$](https://www.luogu.com.cn/user/406941) 的弔图,他回了一句“我今天才见到他,那个小胖子”。
我要笑疯了。
给 @[$\text{Register\_int}$](https://www.luogu.com.cn/user/406941) 和 @[$\text{\_\_int\_\_}$](https://www.luogu.com.cn/user/470465) 看了一下聊天记录,都笑死了。
$\text{cz}$ 发了答案,估分 $82.5$。
考前与 @[$\text{yyz\_100110}$](https://www.luogu.com.cn/user/926838) 面基,顺便见到了 @[$\text{fish\_love\_cat}$](https://www.luogu.com.cn/user/754021) $\text{zfy}$。
$\text{zfy}$ 好闪,拜谢 $\text{zfy}$!
在等 @[$\text{yyz\_100110}$](https://www.luogu.com.cn/user/926838) 的时候,看见了巨佬 @[$\text{狂风之息}$](https://www.luogu.com.cn/user/306050) $\text{zzp}$ 和一群人走进了振万。
$\text{zzp}$ 好闪,拜谢 $\text{zzp}$!
$\huge\text {CSP-S 14:30-16:30}
不会,开摆。
$\text{T2}$:我他妈的竟然会排列,$\color{52C41A}A$。
$\text{T3}$:代入特殊值算,$\color{52C41A}A$。
$\text{T4}$:不会,$\color{E74C3C}B$。
$\text{T5}$:$\text{FIFO}$ 好像是栈来着,$\color{E74C3C}A$。
$\text{T6}$:不知道,$\color{E74C3C}D$。
$\text{T7}$:删了几个字母,$\color{52C41A}C$。
$\text{T8}$:一开始用蒙的,$\color{52C41A}B$,然后验证了一下是对的。
$\text{T9}$:真,选的 $\color{E74C3C}C$。
$\text{T10}$:不会快排,只会 `sort`,选的 $\color{E74C3C}D$。
$\text{T11}$:不会,$\color{E74C3C}C$。
$\text{T12}$:不会,$\color{E74C3C}C$。
$\text{T13}$:不会,$\color{E74C3C}B$。
$\text{T14}$:不会,$\color{E74C3C}A$。
$\text{T15}$:不会,$\color{E74C3C}D$。
$\text{T16-43}$:不会,$\text{\color{E74C3C}{FTF}\color{52C41A}{F}\color{E74C3C}{AC} \color{52C41A}F\color{E74C3C}TFA\color{52C41A}B\color{E74C3C}A \color{52C41A}T\color{E74C3C}F\color{52C41A}TC\color{E74C3C}D\color{52C41A}B \color{52C41A}B\color{E74C3C}CCBD AAB\color{52C41A}CA}$。
$\text{CCF}$ 特有的龟速幂:
```cpp
double quick_power(double x,unsigned n){
if(n==0) return 1;
if(n==1) return x;
return quick_power(x,n/2)*quick_power(x,n/2)*((n&1)?x:1);
}
```
右边的人好像是个 $\text{yyw}$,敲桌子,敲椅子,敲地板,吵死了,考前在 $\%$ $\text{lhz}$。
考的时候好多人都倒头就睡。
看见一个差不多一二年级的小女孩,开考大概半小时就睡觉了,出考场的时候才醒来。
写完还差 $45\min$,无聊,默写《岳阳楼记》,结果写一段多就忘了,在后边写了一句:$\text{“后面忘了,都怪 CCF”}$。突发奇想,仿写了一段《$\text{CSP}$ 记》,等着回去把这玩意补完。然后写了一段《国际歌》歌词。
考完看见右边的人,完善程序全选的 $C$。
出了考场,心情乱七八糟。
$\huge\text{结束嘞!}
出考场大喊:“\text{I FUCK CCF!}”从考场到地铁站喊了好几次。
没进复赛就 $\text{AFO}$ 罢,初三了,该打 $\text{whk}$ 了。
~~谁踏马学五个月就 $\text{AFO}$ 啊。~~
$\text{SB CCF}$,还你妈出重题,出错题。
## 2023.09.17 day 1
看着小图灵上分数线那一栏的一条横线陷入了沉思。
------------
$$\overset{\text{CSP}}{\text{吸诶死屁}\text{记}}$$
公历 $\text{2023}$ 年秋,$\text{FRP}$ 这考 $\text{CSP}$。越明天,$\text{J}$ 组还行,$\text{S}$ 组阴间,乃 $\text{Away from OI}$,增 $\text{whk}$ 成绩,写 $\text{IAKCSP}$ 赋于试卷上,予作《$\text{CSP}$ 记》以记之。
予观夫考场胜状,在厦门一中,摆大烂,睡大觉,无复赛者,横无际涯,$\text{AKJS}$,大佬万千,此则 $\text{CSP}$ 之大观也,前人之述备矣。然则北通 $\text{bzd}$,南极 $\text{bzd}$,神犇蒟蒻,多会于此,览题之情,得无异乎?
若夫 $\text{CCF}$ 傻逼,收钱魔怔,错题重题,后序遍历,都能出错,改个 $\text{AB}$,直接选 $\text{A}$,喜提 $\text{2}$ 分。$\text{2758,2765}$,全是原题。没进复赛也,则有 $\text{AFO}$,忧谗畏讥,满目萧然,感极而悲者矣。
至若出简单题,判断七勾,不会高精,看绝对词,不会哈夫曼,找规律过,操作系统,$\text{html}$。而或海伦公式,边 $\text{345}$,勾股定理,$\text{Rt}$ 三角,直接硬算,此乐何极!进复赛也,则有心旷神怡,爆零偕忘,把酒 $\text{AKIOI}$,其喜洋洋者矣。
嗟夫!予尝求 $\text{IOIAKer}$ 之心,或异二者之为,何哉?不以 $\text{AK}$ 喜,不以爆零悲,居 $\text{IOI}$ 赛场之高则忧 $\text{AK}$,居 $\text{CSP}$ 之远则忧复赛,是 $\text{AK}$ 亦忧,爆零亦忧。然则何时而乐耶?其必曰:“先 $\text{AK}$ 天下之 $\text{CSP}$ 而忧,后 $\text{AK}$ 天下 $\text{IOI}$ 而乐”乎!噫!微 $\text{CSPAKer}$,吾谁与归?时二零二三年九月十六日。
------------
## 2023.09.21 day 5
出分。
$\text{J-76.5,S-31}$。
对我来说还好,毕竟五个月死撑能学多少。
## 2023.09.23 复赛 day -28
出分数线。
$\text{J-55}$,~~遥遥领先!~~。
$\text{S-40}$,~~遥遥落后!~~。
只进了 $\text{J}$,但是没逝嗷,$\text{S}$ 去考了也不会,直接爆零。
## 2023.09.29 day -22
$-240$。
## 2023.10.05 day -16
我超我搜和动规都不会我考什么啊。
## 2023.10.18-20
狂刷图论和树的板子。
复赛 $\text{RP++}$。
## 2023.10.21 day 0
省流:我是傻逼。
怕自己起不来,从 $4$ 点到 $6$ 点每隔 $15\min$ 设一个闹钟。
到考场了,在外边一通乱膜。
开考 $10\min$ 多了,还有人连压缩包都没解压。
题目给的是真【小粉兔】抽象,$\text{T3}$ 放个大模拟给人整不会了。
【小粉兔】的,我背了那么多天的板子一个也没用上。
总之是寄了,约 $\text{50pts}$。
如果我考好了,这里应该会有更多内容,但我没有。
算了,没奖就没奖,至少还有三级,明年再打,初三先把 $\text{whk}$ 搞好,高中才能更好地打 $\text{OI}$。
忧谗畏讥,满目萧然,感极而悲者矣。
### 10.21 23:30
睡了一个下午,心情好了一点点,打算补完。
路上买了两瓶咖啡,先干一瓶,免得打瞌睡。
来的比较晚,班里其他人都拍好照上楼了,我还在地铁上晃。
爬上六楼,考场外早已挤满了人。
在外边背板子,都是 $\text{DFS}$ 或者图论啥的。
几乎都能背下来,于是充满了信心。
好的进考场了。
怕 `cin` 和 `cout` 会拉时间,于是在考前的前几天就改用 `scanf` 和 `printf` 了,但考的时候觉得打这两玩意还更麻烦。
$\text{T1}$ 的第一个问题还好,但第二个问题就能让我在这破题上面卡了 $\text{1h}$,谢谢 $\text{CCF}$。
```cpp
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll N = 1e9;
ll n, ans = 1, d = 1, p;
bool k[N];
void f(ll x) {
bool flag = 0;
ll j;
while (x) {
x -= (x / 3 + 1);
ans++;
}
}
void day(ll x) {
if (x % 3 == 1) d = 1;
}
int main() {
freopen("apple.in","r",stdin);
freopen("apple.out","w",stdout);
scanf("%lld", &n);
p = n;
day(p);
f(n);
printf("%lld %lld", ans, d);
return 0;
}
```
$\text{T2}$ 第一眼看像个背包,于是打了个状态转移方程,但测了几次都是输出 $0$,第二眼看是个贪心,但不会写,于是看见了特殊性质 $A$,打了个部分分,但一分不得。
```cpp
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll N = 1e5;
ll n, d, v[N], a[N], p[N], ans = 0;
ll minn = N << 10;
int main() {
freopen("road.in","r",stdin);
freopen("road.out","w",stdout);
scanf("%lld %lld", &n, &d);
for (ll i = 1; i < n; ++i) {
scanf("%lld", &v[i]);
}
for (ll i = 1; i <= n; ++i) {
scanf("%lld", &a[i]);
minn = min(minn, a[i]);
}
if (minn == a[1]) {
ll q = 0;
for (ll i = 1; i < n ; ++i) {
q += v[i];
}
for (ll i = 1;; ++i) {
ans = i * d;
if (ans >= q) {
printf("%lld", ans);
return 0;
}
}
}
for (ll i = 1; ; ++i) {
ans += a[1];
if (ans >= d) break;
}
return 0;
}
/*
5 4
10 10 10 10
9 8 9 6 5
*/
```
$\text{T3}$ 第一眼感觉还好,于是跳过前两题先打 $\text{T3}$,但越到后面越打越乱,打了一堆函数,而且我发现输出向零取整了,硬是没有想到要乘上 $1.0$ 再输出,到后面 $\text{xmyzwls}$ 来提醒考生注意一些事项,很大声,把我原本就乱的脑子糊成一团了,越打血压越高,敲键盘的力度不断增大,背上一直在冒汗。
我甚至没有特判 $\sqrt 1$,输出了 `sqrt(1)`。
打了一两百行。
```cpp
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll N = 1e5;
ll t, m, a, b, c, del;
bool flag = 1;
double sol1, sol2, sol;
ll yssq[N], cnt = 0, outsq, insq;
ll fenzi, fenmu;
bool pri(ll n) {
if (!n || n == 1) return 0;
for (ll i = 2; i <= sqrt(n); ++i) {
if (!(n % i)) return 0;
}
return 1;
}
double maxn(double x, double y) {
if (x > y) return x;
else return y;
}
void delta(ll x, ll y, ll z){
del = y * y - 4 * x * z;
}
bool Delta(ll del) {
if (del < 0) {
return 0;
}
else {
return 1;
}
}
bool isintaa(double x) {
if (ceil(x) == x && floor(x) == x) return 1;
else return 0;
}
void yssqrt(ll x) {
for (ll i = 1; i <= sqrt(x); i++) {
if (x % (i * i) == 0) {
yssq[++cnt] = i;
}
}
return;
}
void sqhj(ll x) {
if (pri(x)) {
insq = x;
outsq = 1;
}
else if (isintaa(sqrt(x))) {
insq = sqrt(x);
outsq = 1;
}
else {
yssqrt(x);
outsq = yssq[cnt];
insq = x / outsq / outsq;
}
return;
}
bool fenshu(ll x, ll y) {
if (abs(x) % abs(y) == 0) return 1;
else return 0;
}
void fshu(ll x, ll y) {
fenzi = __gcd(abs(x), abs(y));
fenmu = __gcd(abs(x), abs(y));
}
bool zhengchu(ll x, ll y) {
if (abs(x) % abs(y) == 0 && abs(x) >= abs(y)) return 1;
else return 0;
}
int main() {
freopen("uqe.in","r",stdin);
freopen("uqe.out","w",stdout);
scanf("%lld %lld", &t, &m);
while (t--) {
//qingkong
flag = 1;
cnt = 0;
//qingkong
scanf("%lld %lld %lld", &a, &b, &c);
delta(a, b, c);
if (!Delta(del)) {
puts("NO");
continue;
}
sol1 = (-b + del) / (2 * a);
sol2 = (-b - del) / (2 * a);
if (del == 0) {
if (-b == 0) printf("0\n");
else if (zhengchu(-b, 2 * a)) {
printf("%lf", -b / (2 * a));
}
else if (abs(-b) <= abs(2 * a)) {
if ((-b < 0 && a < 0) || (-b > 0 && a > 0)) {
printf("%ld/%ld", -b / __gcd(-b, 2 * a), (2 * a) / __gcd(-b, 2 * a) );
}
else {
printf("-%ld/%ld", abs(-b) / __gcd(abs(-b), abs(2 * a)), abs(2 * a) / __gcd(abs(-b), abs(2 * a)));
}
}
}
else {
bool fflag = 0;
if (-b == 0) fflag = 1;
else if (zhengchu(-b, 2 * a)) {
printf("%lf", -b / (2 * a));
}
else if (abs(-b) <= abs(2 * a)) {
if ((-b < 0 && a < 0) || (-b > 0 && a > 0)) {
printf("%ld/%ld", -b / __gcd(-b, 2 * a), (2 * a) / __gcd(-b, 2 * a) );
}
else {
printf("-%ld/%ld", abs(-b) / __gcd(abs(-b), abs(2 * a)), abs(2 * a) / __gcd(abs(-b), abs(2 * a)));
}
}
if (sol1 > sol2) {
if (!fflag && a > 0) printf("+");
sqhj(del);
if (zhengchu(outsq, 2 * a)) {
if(a < 0) printf("-");
if (outsq / (2 * a) == 1){
}
else printf("%lld", outsq / (2 * a));
}
else {
if ((a < 0)) {
printf("%ld/%ld", outsq / __gcd(outsq, 2 * a), (2 * a) / __gcd(outsq, 2 * a));
}
else {
printf("-%ld/%ld", outsq / __gcd(outsq, abs(2 * a)), abs(2 * a) / __gcd(outsq, abs(2 * a)));
}
}
printf("sqrt(%lld)/%lld",insq, 2 * abs(a));
}
else {
if (!fflag && a > 0) printf("-");
sqhj(del);
if (zhengchu(outsq, 2 * a)) {
if(a < 0) printf("+");
if (outsq / (2 * a) == 1){
}
else printf("%lld", outsq / (2 * a));
}
else {
if ((a < 0)) {
printf("%ld/%ld", outsq / __gcd(outsq, 2 * a), (2 * a) / __gcd(outsq, 2 * a));
}
else {
printf("-%ld/%ld", outsq / __gcd(outsq, abs(2 * a)), abs(2 * a) / __gcd(outsq, abs(2 * a)));
}
}
printf("sqrt(%lld)/%lld",insq, 2 * abs(a));
}
}
}
return 0;
}
/*
9 1000
1 -1 0
-1 -1 -1
1 -2 1
1 5 4
4 4 1
1 0 -432
1 -3 1
2 -4 1
1 7 1
*/
```
$\text{T4}$ 就看到个输出 $-1$。
```cpp
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main() {
freopen("bus.in","r",stdin);
freopen("bus.out","w",stdout);
puts("-1");
return 0;
}
```
结束了。
本来还想写一些有趣的注释,但我从来没有觉得三个半小时是如此的短暂,我没有时间去写。
我关闭文件夹和 $\text{Dev-C++}$,盯着题面 $\text{pdf}$ 发呆。
思考。
平常的模拟赛我一般都能做出一题,而到了现在,我一题都没做出来。
老师曾对我说,如果运气好能拿省一。
而我现在估计连奖都没有。
我不想再以“我只学了几个月”为借口来逃避我的失败。
在考场外和同学聊天,心情乱成一团。
看了文件回收报告,正常,于是离开。
中午甚至都不想吃饭,刷了一会手机就睡觉了。
现在把身心都投入到 $\text{whk}$ 里吧。
现在也就只能看着初赛证书上的“壹等”来安慰一下心情了,尽管它并没有什么用。

反思:对于思维题弱的一批,要多练,免得出现 T1 都挂了这种若智现象,并提高代码能力,人家 Ri 用四十多行(不包括注释)就能 AC T3,我用了一百多行才 10pts,而且要提高写题速度,比如 T4 题目描述都没看直接输出 -1。
总结:菜就多练。
------------
气死了,多扣分+没申诉,4 级三等 $\rightarrow$ 3 级没奖,为自己默哀。