作为一名OIer,无论是一名刚入门的蒟蒻,还是叱诧风云的神犇,相信都会难免去犯一些错误(废话不犯错误岂不是都满分了(ノへ ̄、)。在这里总结了一些OIer常见易犯的错误,与大家共勉。

1.正常错误

可能在我们平时的刷题与比赛的考试中,最常犯同时又犯得最多的就是这类错误了。主要分为以下几类:

  • Wrong Answer(WA) 不通过:程序输出与标准答案不一致(不包括行末空格以及文件末空行)
  • Time Exceeded(TLE) 不通过:程序运行时间超过了题目限制
  • Memory Exceeded(MLE) 不通过:程序运行内存空间超过了题目限制
  • Runtime Error 不通过(RE):程序运行时错误(如数组越界、被零除、运算溢出、栈溢出、无效指针等)
  • Compile Error 不通过(CE):编译失败

对于这些错误呢,最好的解决办法其实就是多刷题,多积累经验,尽量地去克服。(其实就是没有什么解决办法了嘛)

2.低级错误

这些错误就不一样了。这类错误可能会是考试失利的最最最最主要原因。只要充分了解并刻意地去避免,是可以将这类错误的危害降到最低的。我主要总结出了以下几点:

  • 文件名写错:可能有很多同学再打freopen的时候都喜欢复制粘贴,但粘到最后却忘改“in”与“out”,造成评测时满篇子CE。例如:
freopen("tt.in","r",stdin);
freopen("tt.out","w",stdin);
  • 文件操作忘了删注释:这个很好理解,调程序的时候注释掉了文件操作,最后却忘把注释删掉。
  • 调用特定考试不允许的变量名称:一般考试都会有特殊说明,注意一下即可,本人就被此坑过。
  • 输出格式问题:注意题中的描述,样例中间有没有空格,末尾有没有空格之类的。
  • 代码忘保存:也不算是一个错误,但一定要注意。推荐使用一个带自动保存功能的文本编辑器,用cmd编译。如果用普通IDE的话一定要及时存到U盘里一份备份。

3.学术性错误:

听起来挺高端的,实际上只要你足够细心,很多也是可以避免的。

  • 数组越界:这个不多说,别跟我说你没犯过。多数CE都是这种情况( ̄_, ̄ )
  • 爆空间:MLE罪魁祸首,一定要算好。
  • 爆栈:可能是最难看出来的一种错误了,经常导致CE。如果算不明白的话,多用用非递归形式。(如果都不会的话,拿拿部分分吧)
  • 无向图:记得开二倍数组。
  • 线段树:开数组之前一定要算好多大,如果不会的话,无脑开4倍吧。(都学线段树了还不会算空间真的是(/▽\))
  • 网络流:开多大数组都是有讲究的,不能开小,也不能无脑开大。
  • 图论:用spfa等算法的时候注意看有没有负环。
  • 数据范围:看好数据范围,防止爆int之类的。
  • 时间复杂度:确定自己算法能得多少分,对时间复杂度做好充分的了解。
  • 循环:注意边界问题,更不要写反。(因此很多题我都爆过0╥﹏╥...)
  • 如果不开全局变量的话,要给变量赋值,否则是随机数。

以上这些便是我在OI的学习中遇到过的部分问题,以后可能随时补充,也同时欢迎大家给我补充,我们共同成长,共同进步!

OIer常见问题与错误总结的更多相关文章

  1. Goldengate OGG常见问题与错误列表

     Goldengate OGG常见问题与错误列表  以下列出了OGG一些常见的问题与错误及其解答:   Note: 966211.1 How To Resync A Single Table With ...

  2. Nginx 常见问题与错误处理

    常见问题与错误处理1. 400 bad request 错误的原因和解决办法配置 nginx.conf 相关设置如下.client_header_buffer_size 16k;large_clien ...

  3. mybatis常见问题和错误

    1. jdbc java type 映射关系 1) mysql的text 在mybatis中使用varchar类型 2. mybatis常见的错误 3.There is no getter for p ...

  4. Nginx中常见问题与错误处理

    1.400 bad request错误的原因和解决办法 配置nginx.conf相关设置如下. client_header_buffer_size 16k;large_client_header_bu ...

  5. docker使用常见问题解决方案:错误号码2058,docker WARNING :IPv4,容器间的通讯

    1.错误号码2058 1,错误解决: 解决方法:docker下mysql容器 登录 mysql -u root -p 登录你的 mysql 数据库,然后 执行这条SQL: ALTER USER 'ro ...

  6. [备忘][转]rsync使用时的常见问题

    sync使用时的常见问题: 错误1: rsync: read error: Connection reset by peer (104) rsync error: error in rsync pro ...

  7. 在EF中使用MySQL的方法及常见问题

    有时需要在网上租用空间或数据库,Mysql成本低一些,所以想将sql server转成mysql…… 注意:在安装Mysql时要选择文字集为utf8,否则将不能使用中文(当前也可以在创建数据库时使用u ...

  8. rsync常见错误

    rsync使用时的常见问题: 错误1: rsync: read error: Connection reset by peer (104) rsync error: error in rsync pr ...

  9. 圣诞快乐!OIer挂分小技巧

    OIer常犯错误 自己的错误 循环里套return 线段树求和 int 定义,下传 int 定义 cmp<,>号分不清 主观行为举动错误 踢电源线,注意安全(_Destiny) TLE 大 ...

随机推荐

  1. ES 查询时 排序报错(fielddata is disabled on text fileds by default ... )解决方法

    背景:elasticsearch 进行排序的时候,可能会排序数字.日期.但是在排序text类型的时候就会出现上述错误 原因(参考): https://blog.csdn.net/wild46cat/a ...

  2. 103、Java中String类之compareTo()方法

    01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...

  3. mysql里的序列应用详解

    相关知识库: MySQL知识库 相关文章: ibatis中主键的返回 oracle 实现自增auto_increament 用oracle的trigger生成主键的时候和hibernate冲突的讨论 ...

  4. Linux 下JDK安装

     ubuntu下安装jdk  sudo apt-get install openjdk-8-jdk =============================================== Ce ...

  5. greenplum 存储过程 变量类型

    参考: https://www.cnblogs.com/kungfupanda/p/4478917.html

  6. 我的Python学习笔记之文件操作

    一,Python的文件类型有两种 1.文本文件 2.二进制文件 文件的操作: 1.打开文件,获取文件的控制权 2.读写文件 3.关闭文件,释放文件的控制权,如果不释放控制权,那么其他程序就不能访问此文 ...

  7. 使用Zabbix监控Nginx服务实战案例

    使用Zabbix监控Nginx服务实战案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.  一.编译安装nginx步骤详解并开启状态页 博主推荐阅读: https://www.cn ...

  8. P1061 判断题

    P1061 判断题 转跳点:

  9. P1075 链表元素分类

    P1075 链表元素分类 转跳点:

  10. 洛谷 P3435 [POI2006]OKR-Periods of Words

    题目传送门 解题思路: 这道题题面比较乱,先说一下这道题要求什么: 对于一个字符串,求它及它的所有前缀的一个答案串的长度之和,答案串就是对于一个字符串,找到一个它的一个前缀,这个前缀后面在复制一遍,得 ...