CSP-J/S 2023 游记

· · 生活·游记

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}$ 里吧。 现在也就只能看着初赛证书上的“壹等”来安慰一下心情了,尽管它并没有什么用。 ![](https://cdn.luogu.com.cn/upload/image_hosting/t0si74sa.png) 反思:对于思维题弱的一批,要多练,免得出现 T1 都挂了这种若智现象,并提高代码能力,人家 Ri 用四十多行(不包括注释)就能 AC T3,我用了一百多行才 10pts,而且要提高写题速度,比如 T4 题目描述都没看直接输出 -1。 总结:菜就多练。 ------------ 气死了,多扣分+没申诉,4 级三等 $\rightarrow$ 3 级没奖,为自己默哀。