零、代码基础

  • 万能头文件 #include<bits/stdc++.h> 别拼错,一个字母、符号都不能差,否则提交直接爆零。

一、输入输出(平台提交零容错)

  • 不能只看样例​:样例是整数不代表输入一定是整数,样例有序不代表评测数据一定有序。一切以题目文字描述为准,别脑补规律。
  • 输出格式完全匹配​:空格、换行、大小写,一个字符都别错。复制样例输出字符串时,检查是否多复制了空白字符。
  • 样例通过 正确​:自己再构造 232 \sim 3 组边界数据(最小值、最大值、特殊情况),验证输出是否符合预期。

二、变量与运算(翻车重灾区)

  • 变量必须初始化​:求和 =0=0,计数 =0=0,求积 =1=1,最小值设大,最大值设小。
  • 先看数据范围​:可能超 2×10⁹ 一律 long long。注意 int * int 结果还是 int,稳妥做法是全部用 long long
  • min / max 参数必须同类型:一个 int 一个 long long 会编译报错,必要时先强制转换。
  • 整数除法想留小数,先乘 1.0​:写成 1.0 * a / b,否则结果会被截断成整数。
  • 保留小数用 fixed << setprecision(n)​:名称别拼错。
  • = == 别写混​:if 里判断相等永远用 ==
  • 除零检查​:除法、取模前一定确认除数不为 00
  • 数据重复度高时考虑计数法​:先统计各元素出现次数再处理,比直接暴力枚举更高效,注意计数数组的大小要能覆盖值域范围。

三、循环与数组(隐藏的 bug)

  • 内外层循环变量别重名​:通常用 i, j, k,别偷懒全写 i
  • 数组开大 5105 \sim 10​,大数组放全局,避免爆栈。全局初始值为 00,局部记得清零。
  • 多组测试数据必须清空​:数组、计数器每组前重置,不会用 memset 就用循环,更稳妥。

四、函数(别漏 return)

  • 非 void 函数所有路径都要 return:漏了产生随机值,编译器不一定警告。
  • 传参想清楚​:要修改的用 & 引用,只读取的不加。(这个很少用)

五、最后检查(最后 1010 分钟救命)

  • 提交的是​正确题目、最新代码​,不是旧版本,不要提交错题。
  • 删干净或注释​调试用的 cout​,再跑一遍样例和自造边界数据,确认输出完全一致。
  • 尽量不碰核心逻辑​,只改格式错误和低级拼写问题。

六、考场策略

  • 开考可先通读全部题目​:挑最简单、最有把握的先写,快速建立信心、稳住分数。
  • 卡壳 2020 分钟立刻止损​:没思路就写暴力、打表或特判,先拿部分分,绝不能空题。
  • 写完一题立刻提交​:中途可以多次提交,不要等到最后一起交,防止死机、重启导致代码丢失。
  • 别拖到最后一分钟提交​:临近结束 OJ 平台很可能卡顿甚至崩溃,导致提交失败。最好提前 55 分钟完成最终提交。

先保底,再满分。

能拿的分一分不丢,卡住的题暴力保部分分。

加油,等你们好消息!

0 条评论

目前还没有评论...