CSP2025 & NOIP2025游记
我常常追忆过去。
我该在哪里停留?我问我自己。
CSP2025
9/20 初赛考完了
9/24 被初赛里那几道交互题吓到了,遂水了几道交互题
10/1~10/5 国庆集训,打到过290/400,也干过0/400 (捆绑数据太坏了)
10/31 十月的最后一天啊……明天真的就要考试了吗?
11/1 rp++;
自从开学以来就被各科老师狂轰滥炸几乎没有睡过安稳觉,但是今天早上睡到了8:40
还是困,还想睡,但是睡不着
带了一小罐巧克力豆,去考点的路上扒拉了两颗。一看,不好,怎么都是红豆,今天该不会要WA了吧,于是又赶紧扒拉了两颗绿豆
有个珂爱的小少年在开考前吵着要换个键盘,然后在监考员换键盘时说他弄疼自己了,大叫着要他道歉……
我,由于一排一座还是本校学生还是个女孩纸(是真的),于是得到了另一个监考员的特别关注……
T1,半小时打了个贪心,结果……WA?思来想去不知道错在哪儿了,于是改为暴力dp,只有55分,又捞了性质AB的分,大概70吧。
T2,一眼最小生成树,
T4,暴力递归,稍微剪了枝,但依旧只能捞到8分
T3,没时间了,大暴力,也许可以捞30分?
最后20分钟,反复检查那些可能见祖宗的要点
结束了,就这么结束了
回来后在你谷上看到一堆300+的大佬,肃然起敬
反悔贪心?没听说过
仅保留最小生成树的边?我怎么没想到
AC自动机?抱歉不会
理论上最高得分124,要是再出点WA的话就……
11/6 出成绩了,146,T3 居然能有 50 分是我没想到的,但是 1= 还是很危啊……
后来……确实,是 2= ……
SH 究竟什么时候变成强省了……
完了我的 rp 是不是忘记开成 unsigned long long 了,怕不是加成负数了吧
赶紧把 unsigned 加上 (确信
NOIPlus2025
考前那一周,天天晚自修溜到机房做题。同班一个大佬申请了全天不上课去机房,但奈何我是个蒟蒻 (险些连续三次英语不及格),怕被班主任胖揍,还是……诶……算了吧……
11/25 来到机房,看到大佬的电脑屏幕一片绿色。等等,这是什么?“NOIP 模版自测赛”?遂开始打模版
11/27 试图做线段树1.5,然后……怎么死活过不去啊……
2 hours later……
md我是不是傻,懒标记忘记下传了……
11/28 想看看前几年的 NOIP 都大概是什么难度,考啥内容,于是点开了题库
愤怒的小鸟,逛公园,赛道修建……诶,填数游戏是什么,看上去很有意思的样子,我的历史成绩怎么只有 50 分
于是乎,试图直接一个乘法原理解决……
蛙趣,样例 2 怎么输出 144?
啊不,答案为什么不是 144?
点开讨论区……是我无知了……
15min later,思考无果,继续翻看讨论区
1.5h later……好不容易敲出来一个代码,样例 3 就炸了
抱着我今天一定要把这题做出来的心态,点开了题解。照着第一篇题解的思路打了一遍,想着这总该能过了吧,就在结尾加上了tomorrow NOIP rp++
嗯,喜提 65……
无奈找到了下边一份打表的题解,总算是过了
原定九点睡觉,成功推迟到了十点……
11/29 rp++;
早上 6:30 起床,结果到考点才 7:30,被家长摁在车里“闭目养神”直到 8:00 进考场
第一感受:离厕所似乎有点远……
阳光从窗缝里照射进来,撒到了我的脸上,我的神志也算是更加清醒了
发密码:!noip@Nov29,2025:dream
::::info[来自 Deepseek 的解读]
🧩 密码解析:一段编译成功的绝望
第1行:bool reality = !noip;
- 变量
noip:在此处,它被隐式初始化为true。它代表着你长久以来的信念、刷过的题库、模拟赛建立的自信,是你踏入考场时的布尔状态——你认为自己#define 成功 true。 - 运算符
!:这是整个密码的灵魂,是C++中冷酷无情的逻辑非。当它作用于noip时,发生了灾难性的位翻转。你的信心、你的准备、你对题目的所有预判,在开考瞬间被集体取反。 - 赋值给
reality:于是,reality这个残酷的布尔变量被赋值为true。它宣告了一个无可辩驳的运行结果:你所以为的“我会做”,其反面,才是本场考试的真相。
第2行:const auto experience = Nov29, 2025;
- 这是一个常量定义,将
Nov29, 2025这个时间点,永久地烙印在你的程序生涯中。const关键字意味着,这段经历不可修改,不可优化,它将作为一个常量,被你链接进人生的记忆库。
第3行:std::cout << experience << ": " << &dream << std::endl;
- 对象
dream:它是一个基类为Hope,派生于Ambition的复杂对象。在代码的编译期(备考期),它结构完整,数据成员饱满,充满了虚函数表指针,指向各种美好的未来。 - 取地址运算符
&:此处的&并非引用,而是取地址。这意味着,在运行时(考场上),你已无法操作dream这个对象本身。你只能眼睁睁地看着它的内存地址被输出到名为《人生》的标准输出流上。 - 输出结果:你得到的,不再是对象温暖的内容,而是一个冰冷的、十六进制的内存地址。它象征着你的梦想在此时此刻,变成了一个你知其存在,却无法触及、无法调用的遥远概念。
💻 运行时崩溃:Segmentation fault (core dumped)
当这段代码最终执行时,整个系统状态可以总结为:
// 程序状态报告:
bool canISolveTheProblem = !true; // false
bool doIFeelDesperate = !false; // true
// 试图调用梦想对象的方法,导致运行时错误:
dream.solve(allProblems); // Throws 'WhatTheHeckIsThisException'
核心转储分析:在 Nov29, 2025 这个时间点,几乎所有进程(考生)的堆栈(心态)都发生了相同的错误:试图在一个空指针上调用 solve() 成员函数。梦想的对象还在,但你已找不到访问它的正确句柄。
📝 结论:一封来自编译器的情书
综上所述,!noip@Nov29,2025:dream 实则是一封用机器语言写就的、充满黑色幽默的情书。
它通过最基本的逻辑运算 !,优雅而残酷地完成了对所有参赛者认知状态的比特翻转。它将一个温暖的、充满无限可能的 dream 对象,瞬间转换为一个只可远观、无法交互的内存地址。
最终,当你在考场上,面对那如同天书般的题目,脑海中浮现的不再是算法和逻辑,而是那个冰冷的、十六进制的梦想地址时——恭喜你,你已经成功运行了本届NOIP的隐藏试题,并获得了唯一的、也是共同的输出结果:
“访问违例。梦想的地址有效,但您当前的权限与能力,不足以进行此次访问。”
这,就是 !noip@Nov29,2025:dream 想要传达的全部深意。它不是密码,它是一个运行结果,一个所有亲历者都能完美复现的、关于成长的Bug。
::::
T1,贪心,怕贪错,想了很久。过了全部样例,然后发现西西爱弗不给 long long 范围的样例,真阴险
T2,想了一会儿,好像挺简单嘛,打算用二分解决
然后……
是挺 简单
个鸡毛啊!!!
抄一下另一篇游记的内容(原来还有同道中人)
T2:在小 X 的所有
2^n 种定价方案中,有多少种定价方案使得他按照上述购买策略能购买到的糖果的原价总和在所有策略中最大。我:在小 X 的所有
2^n 种定价方案中,有多少种定价方案使得他按照上述购买策略能购买到的糖果的原价总和在所有定价方案中最大。
看样子是想不出正解了,考虑暴力,也是调了很久,赶紧看后面
T3,样例手算了一遍,贪心……吗?没那么简单
它给深度是干什么用的???
试图手搓样例二的第一组数据,结果,没搓出来……
没时间了,暴力吧
结果暴力也没调出来……
看T4,打算直接暴力了,然而又一次样例都没能搓出来……
回过去看T2,发现有特殊性质,去做
黄紫紫紫 --> 黄紫黑紫 --> 黄紫黑黑 --> 黄黑黑黑
CCF:嘿嘿嘿~
也算是体验了一把
认命了,准备退役
不过现在好像又成 黄紫黑黑 了
亿点感想
六年 OI 一场空……
我决定退役了
我写好了退役感言
我准备提交这份游记了
但是……
等等……
?
!
教练要把我拉去省选了???
退役失败
六年OI,原来并不是一场空
我常常眺望未来。
我该前往何处?我问我自己。
全文完。