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{J}\) 和 \(\text{S}\) 的考场都是 \(303\),真巧。
满脑子的 \(\text{RP++}\)。
本周第一次 \(0\) 点前睡觉。
2023.09.16 day 0
\(\huge{\text{CSP-J/S 2023 RP++}}\)
\(5\) 点起床,找大佬 @\(\text{\_\_int\_\_}\) 问了些问题。
在初中部集合,一开始不知道,跑到高中部机房去了。
\(\text{CSP-J/S 2023,启动!}\)
\(\huge\text {CSP-J 9:30-11:30}\)
和 @\(\text{Register\_int}\) \(\text{cjld}\) 一个考场。
\(\text{cjld}\) 好闪,拜谢 \(\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}\) 发 \(\text{QQ}\),我发了一张 @\(\text{Register\_int}\) 的弔图,他回了一句“我今天才见到他,那个小胖子”。
我要笑疯了。
给 @\(\text{Register\_int}\) 和 @\(\text{\_\_int\_\_}\) 看了一下聊天记录,都笑死了。
\(\text{cz}\) 发了答案,估分 \(82.5\)。
考前与 @\(\text{yyz\_100110}\) 面基,顺便见到了 @\(\text{fish\_love\_cat}\) \(\text{zfy}\)。
\(\text{zfy}\) 好闪,拜谢 \(\text{zfy}\)!
在等 @\(\text{yyz\_100110}\) 的时候,看见了巨佬 @\(\text{狂风之息}\) \(\text{zzp}\) 和一群人走进了振万。
\(\text{zzp}\) 好闪,拜谢 \(\text{zzp}\)!
\(\huge\text {CSP-S 14:30-16:30}\)
不会,开摆。
\(\text{T1}\):凭一点点印象选了 \(\color{52C41A}B\)。
\(\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}\) 特有的龟速幂:
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{cnm}\),\(\text J\) 估分 \([73.5,77.5]\),\(\text S\) 估分 \(34\)。
没进复赛就 \(\text{AFO}\) 罢,初三了,该打 \(\text{whk}\) 了。
谁踏马学五个月就 \(\text{AFO}\) 啊。
\(\text{SB CCF}\),还你妈出重题,出错题。
2023.09.17 day 1
看着小图灵上分数线那一栏的一条横线陷入了沉思。
公历 \(\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}\)。
#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\),打了个部分分,但一分不得。
#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)。
打了一两百行。
#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\)。
#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。
总结:菜就多练。

浙公网安备 33010602011771号