专栏文章
警示后人——OI 赛制防丢分注意事项
个人记录参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @mimyx0si
- 此快照首次捕获于
- 2025/12/01 17:49 3 个月前
- 此快照最后确认于
- 2025/12/01 17:49 3 个月前
警示后人
OI 赛制防丢分注意事项
都是我和前人问走过的弯路,你们可别走了,走了就会④。
一、场内场外——基础状态问题
1. 试机注意事项(试机前必看)
- 好好地检查电脑,特别是要检查
dev-c++、鼠标左右键、键盘、分辨率等等; - 用
dev-c++或code::blocks或VS Code打一个带文件 IO 的A+B并进行命令行调试,检查能否正常打代码和调试,出了问题一定要报备; - 尝试
__int128等高版本或 Linux 特有的feautre是否可正常编译运行,再次强调,带文件 IO 和命令行检验; - 检查此电脑、PDF 打开器能否正常运行,各个功能是否正常,有 Linux 的熟悉 Linux;
- 检查文件资源管理器的每个功能,尤其要打开显示文件扩展名,不然你如果连续出现两个
.cpp咋④的都不知道; - 熟悉考场地点,确保能尽快到达;
- 熟悉考试路径,以防人多迷路。
2. 技术类错误
- 不要存错盘或文件夹;
- 不要重命名错文件夹;
- 比赛开始前的密码尽量一次输对。
3. 态级错误(心态、状态、态度)
3.1 心态
调整好心态,给你几条建议:
考前睡个好觉其实睡得不好也行,只下午考的话只要午觉睡好就行;- 不要打在考前学不会的部分,不然心态易崩;
- 不要在考场上乱
yy算法,不然多数情况下会浪费大量时间且会崩心态,但急中生智除外; - 考前可以通过告诉自己“我能行”的方式调整心态,别看不起,它很有用。
3.2 状态
状态要调整好。
- 考前睡个好觉;
- 考前不要让大脑太过于运转或太过于放松;
- 不要把考试看得太轻,也不要把考试看得太重要,这不是您的终点(除非您高二且这是 OI 系列考试);
- 考试时可以带零食和水,但不要去太多卫生间,也不要吃海鲜、把子肉等垃圾食品,拉肚子后果自负;
- 考前可以适当放松,但是考前最后 和两次考试之间建议不要放松;
- 考前可以打爽文或者是打 OI 回忆录来调整状态;
- 考前要看一遍其他人写的总结,这样能提升你的状态,亲测了,很有效。
3.3 态度
考试要有个态度!!!不要太放纵了!!!
- 积极践行“以辛勤劳动为荣,以好逸恶劳为耻;以遵纪守法为荣,以违法乱纪为耻 ”的社会主义荣辱观,以及“敬业、诚信”的社会主义核心价值观,这里提醒一下某只鸟;
- 如果在做题的时候,遇见不会做题光搞心态的 元体验卡歌(这里指的是
CSP-S花钱光体验场地不打比赛的人,引申为不好好打比赛的人)、AK佬(有些是有些不是)或🍬🍡人(这种人🍬得没边,有可能是会打的部分分都打完了,最后 多见)少管,注意力放在题上,一定会有人来专门处理这种人的(它们就叫去吧),如果引火上身得不偿失; - 不要皖尤溪,不然等着吃🛀💊吧。除非你把能打的部分分打完并保证无误,但一般还是不要皖尤溪;
- 蒙脱石散、速效救心丸、创可贴、卫生纸之类的东西需要的时候也要带,不然真出事了谁都救不了你;
- 就算你
AK了也别大声喧哗,认真检查; - 最后 分钟好好地检查每道题,不管你有没有打完,有没有
AK,典型教训:CSP-J 2024(笔者),CSP-S 2025(笔者、hhr); - 虽然我们都讲“舍生取义”,但考场上宁愿苟且偷分,不要舍分取义,部分分必须好好地打,《骗分导论》最好看一遍。
二、基础为重——入门级问题
1. 入门级代码(初级语法)错误(部分附解决方法)
- 不要注释或写错
freopen; - 不要写错文件名;
- 不要用关键字当变量(笔者栽在了
hash上,cwz 栽在了kill上); - 不要打错大括号,最好每打一行就
F9编译检查一次(不瞒您说,笔者很多次犯这个问题); - 数据范围、模数等基本数据不要看错,分类讨论时注意是否遗漏,输入输出的格式要特别谨慎;
- 一定要写
return 0; - 尽可能杜绝
#define int long long; - 定义函数时注意函数类型;
- 不要除以 ,最好除以变量的时候作除以 预判;
- 数组不要开小,建议多开 ;不要开大,
MLE会直接 分,真要检查总空间可以定义两个bool然后cerr这俩间的字节数判断; - 注意字符串类型的读入中间可能会暗藏空格,
scanf和getchar读字符都可能会读到空格; - 注意如果输入多可以写快读,输出多可以写快写;
- 注意判断边界( 和 );
- 不要漏写头文件,再次建议:最好每打一行就
F9编译检查一次,也不要用万能头,否则可能引发不必要的错误; - 用完的断点调错一定要注释,最好删掉;
- 当输入数据、坐标等为负数时,记得加上一个偏移值防止越界
RE(RE这个测试点甚至这档部分分就白打了); - 不要定义野指针;
- 尽量不要关同步流(虽然同步流省时间,且多数情况下都是正确的,但是如果使用
cin和cout以外的输入输出方式会读错数据),解决办法回看第 条; - 在使用
scanf时输入数值、字符或数组元素时由于粗心没加&,会RE且极难调出(因为scanf是根据地址读入的数据); - 记得每道题的每个样例都测试到,不要掉以轻心。
2. 高级语法(基础级代码细节、基础级算法)错误
- 出现任何环问题,最好先翻倍区间;
- 只要不是主函数,统统用的是栈空间,数据太大会
RE; - 树上
dfs的时候别忘了儿子不能更新父亲的fa、dep、dfn、etc.; bfs时不要忘记给起点入队;- 尽可能地不用
map、set、list,除非必须(它仨分别的上位替代:unordered_map、multiset、vector或手写链表); - 函数内部的空间限制为 ,所以数组尽量不要开在函数内部(小心
RE); - 高精度啊,那注意事项很多,比如说要注意方向啊、顺序啊、压位啊、重制运算符别写错啊等等;
- 贪心一定要先好好证明,至少要列几组样例去测测,还有再次提醒考场上宁愿苟且偷分,不要舍分取义,所以大胆猜测,小心求证,一步都不能少;
- 二分先看清边界,可以多测几次,也可以在最后转暴力(但小心常数问题);
- 排序的时候优先考虑
std::sort,功能较强大,实现极易,实在不行再用手写排序,用的时候也尽量写归并、基数之类的快速的排序; - 搜索这一块,深搜注意栈空间问题,能剪的枝要剪掉;广搜适合在树的高度很高但深度不大时使用,也可以用来遍历图,时间复杂度 ;
- 动态规划注意能压维的压维,赛场上如果
MLE那可是零分,要按照三步走:状态、转移、初始化; - 待补
真到考场上,第一件事是在 C 盘和 D 盘开你的主文件夹、子文件夹,然后开 个 还能拉那些并列第 11 名的分。。。。。。
cpp, 个存 C 盘, 个存 D 盘,都存到子文件夹,并做一定标记,在 C 盘打初始代码;如果某题目初始代码准确无误,复制到 D 盘后不管;最后 分钟再次复制,否则后果自负!!!如果我当时 2024 年这样做了,我就 305 分(一等,第 12 名)了,以及一定要时刻使用 gcc 编译!!!
最后祝各位:
- 你往昔的信奥之路,山花烂漫,收获硕丰;
- 你即将的信奥比赛,一发入魂,心想事成;
- 你未来的人生征途,披荆斩棘,走向巅峰!
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...