明天开考!CSP-J/S 复赛“防爆零”清单
这5件事,比多刷两道题更值钱
【战码青少年编程】 · 信息学奥赛
在OI赛制里,有一个很残酷的现实——“会做”和“得分”之间,隔着一条叫“规矩”的河。每年复赛出分,总有平时模拟排名靠前的孩子拿了0分。不是不会写,是文件没交对、文件夹建错、或者多输出了一行调试信息。
考试时间
明天(10月31日,周六),2026年CSP-J/S第二轮认证正式开考:
入门组(CSP-J2) 08:30—12:00
提高组(CSP-S2) 14:30—18:30
来源:CCF NOI 官网《CSP-J/S 2026 第二轮报名通知》
今晚,很多孩子还在死磕动态规划或者反复背模板...
但作为教练,我们想说一句可能不太中听的话:今晚再刷三道题,远不如把下面这5件事检查三遍
今晚哪怕不刷题,也请把这5条刻进脑子里
保命动作一:写好 freopen(这是生死线)
为什么:复赛是自动评测。评测机不看你的屏幕,只认文件。如果程序里没有文件读入,它在评测机上会一直等待键盘输入,等不到输出,直接0分
今晚怎么做:
三个坑,务必逐条核对:
1. "r" 和 "w" 必须是小写、双引号。'r'(单引号)会编译报错,"read" 会直接爆零;
2. 文件名、后缀一个字符都不能错。abc.in 写成 abc.txt 或 abc.in.txt,评测机找不到文件;
3. 交卷前一定要确认 freopen 没被注释掉。这是最高频的爆零原因——本地调试时习惯性注释,交卷时忘了恢复。
教练建议:干脆全程不注释 freopen。把下发的样例文件复制一份改名成 poker.in,跑完看 poker.out,既方便测试,也从根上不存在“忘记恢复”的问题。
保命动作二:文件名,直接复制,不要手敲
为什么:NOI Linux 系统严格区分大小写。poker.in 和 Poker.in 是两个不同的文件,读不到就是 0 分,没有商量的余地。
今晚怎么做:
1. 进考场拿到题目后,第一件事就是从 PDF 或网页题面里复制文件名,不要自己手打;
2. Windows 系统默认隐藏扩展名,很可能把文件存成 poker.cpp.cpp 或 abc.in.txt 而不自知。考前务必在「文件夹选项 → 查看」里取消勾选“隐藏已知文件类型的扩展名”;
3. 「四名一致」原则:文件夹名、.cpp 程序名、输入文件名、输出文件名,四者必须完全一致,且通常是英文小写。
保命动作三:“三层文件夹”结构不能乱
为什么:交卷时,你提交的不是一个单纯的代码文件,而是特定命名的文件夹。
正确的结构(以准考证号 YN-J00001、题目 task1 为例):在脑海里过一遍正确的文件夹结构——最外层是你的准考证号总文件夹,里面是题目英文名子文件夹,再里面只放你的 .cpp 源代码文件
·上述目录结构仅为示例,实际文件名称、目录结构及提交要求以2026年CCF相关技术规则、试题要求和认证现场规定为准
· 准考证号大写,连接符是减号 - 不是下划线 _,前后无空格;
· 题目文件夹名和 .cpp 文件名通常小写;
· 目录里只留 .cpp,把本地测试的 .in、.out、.exe、备份文件全部删掉;
· 不要用中文目录;
注意:各省提交方式不同。多数省份是建文件夹提交,也有用网页程序回收系统的(直接把代码粘贴提交)。务必提前确认本省是哪种。
保命动作四:数组开大,long long 备好
为什么:样例能过,不代表极限数据能过。数组开小会 RE(运行时错误),int 溢出会 WA(答案错误),结果都是 0 分。
今晚怎么做:
· int 大约只能存到2×10⁹(准确说是2,147,483,647)。只要数据范围到了10⁹ 且涉及加法、乘法、累加、DP 状态值,毫不犹豫开 long long;
· 两个10⁹ 相乘,即使结果没超过 long long,中间过程也可能先溢出——拿不准就加括号强转;
· 数组多开5个(题目要求 n≤100000,就开 a[100005]);
· 无向图邻接表按2m开(每条边存两次);
· 数组优先开全局(全局变量可用空间远大于局部变量);
· 内存通常限制256MB或512MB,以题面为准。全局 int a[1000000] 约占 4MB,int a[10⁷] 约占40MB,心里要有数。
保命动作五:删掉所有调试输出
为什么:调试时写的 cout << "here" << endl;,交卷忘了删。评测机比对输出文件,发现多了一行 here,直接判 WA。
今晚怎么做:
1. 交卷前留5–10分钟,把四道题代码从头扫一遍;
2. 用 Ctrl+F 全文搜索 cout、printf、cerr,逐个确认;
3. 不要输出任何提示语(如“请输入”“答案是”)。官方规定:多余的输入输出提示,会被判错;
4. 输出格式逐字符对照题目要求:空格还是换行、首字母是否大写、小数位数。评测按全文比较(只过滤行末空格和文末回车),行首多余空格、多余空行都会导致比较失败。
最后:别忘了“部分分”这根救命稻草
除了上面5条,明天在考场上还有两件事,比死磕难题重要得多。
① 先通读,再动笔。拿到卷子花10分钟把四道题全部读一遍。题目不一定按难度排序,别默认T1 最简单。
② 不会正解,就先骗分。OI 赛制按测试点给分——四道题各100 分,共400 分,每道题通常10–20个测试点。
具体可以这么干:
· 小数据写暴力搜索;
· 用贪心或特殊性质做特判;
· 题目说“若无解输出-1”,那就先写个输出-1,可能就有分;
· 大范围实在做不出来,打表也是办法(注意代码有 100KB 大小限制)。
会做的题一分不丢,不会做的题骗点分就跑——这才是高手策略。
今晚 / 明早的物品清单
必带:
· 纸质版准考证(入门组、提高组准考证不互通)
· 身份证原件(或符合要求的身份证明)
· 黑色签字笔、透明笔袋(草稿纸考场一般提供)
禁止带入机房:
书包、书籍、纸张、U盘、手机、电话手表、计算器及其他电子存储通讯设备,可放指定寄存处。
写在最后
今晚,请家长不要给孩子任何压力。
走到复赛这一步,他们已经很了不起了。算法水平在今晚基本已经定型,真正能拉开差距的,只剩两件事:细节和心态。
明天的对手不是旁边的人,是你平时养成的习惯。
祝所有信奥少年,顺利AC,不留遗憾。
本文内容依据 CCF NOI 官网通知及各省认证者须知整理。各省考场环境(Windows / NOI Linux 2.0)、目录要求与提交方式存在差异,请以本人准考证及所在省份官方通知为准。
评论 1