ACM过程中的提交结果(新手必看!)

举报
楚楚冻人玥玥仙女 发表于 2021/11/19 03:24:35 2021/11/19
【摘要】 ACM 中提交结果以及可能的原因 备注:以下内容全都是来自我平时写程序过程中的总结,如有纰漏,请大家指正,并多多包涵 Accepted (正确) 当你在某一ACM在线测评系统...

ACM 中提交结果以及可能的原因

备注:以下内容全都是来自我平时写程序过程中的总结,如有纰漏,请大家指正,并多多包涵

Accepted (正确)

当你在某一ACM在线测评系统上提交了你的代码后,如果你得到了一个Accepted,简称AC,恭喜你,通过了这道题,你的代码是正确的。除了Accepted之外的所有结果,都是不符合要求的。


Compile Error(编译错误)

简称CE。通常是指语法错误,这是最最简单的错误了,因为你完全可以在提交之前,在本地的编译器上测试出来,然后改正。


Wrong Answer(错误)

简称WA。很多ACM新手们,在千辛万苦写好一份代码并且自认为是正确的,但是提交之后却得到了Wrong Answer的结果,他们百思不得其解,其实,OJ的后台有很多组测试数据,就算你的代码可以通过样例,但并不代表可以通过后台的所有数据,只要你有一组数据输出与测试输出不一样,你就无法AC。所以建议同学们,可以自己脑补一些特殊数据,看看是否能够得到正确的结果。除此之外,还要再次认真读题,很多时候Wrong Answer都是因为没有正确理解题目的意思。


Output Limit(输出超限)

遇到这种错误,一般都是固定套路,以下是我个人的总结

  • C语言中的多组输入用到了如下格式:while(scanf("%d",&x)){ }这时候会出现输出超限,改为while( ~ scanf("%d",&x)){}或者while(scanf("%d",&x) != EOF){}
  • 程序中输出语句有死循环,导致程序输出无法终止
  • C++程序中写了宏,如#define ON 1虽然不知道为啥原因,但删掉define这一行就没有输出超限了,我也很无语……

Presentation Error(格式错误)

简称PE。这种错误还是比较容易发现并改正的,通常产生的原因是由于你的代码输出的格式与题目要求的不一致。
常见的PE有以下几种:

  • 大小写错误
  • 行末不应该有空格
  • 分号 冒号 逗号等中英文标点符号傻傻分不清
  • 换行和空格乱用

Time Limited Exceed(超时)

简称TLE。通常需要进行算法优化来降低时间复杂度,加快代码运行的时间。
常见的TLE有以下几种情况:

  • 程序中出现无法终止的死循环
  • 读取输入流和输出流的时间太长。(C++的输入输出中,cincout没有scanfprintf快,不要问我是怎么知道的,我都已经在输入输出上载过无数跟头了…建议同学们养成用scanfprintf的好习惯)
    不过cin/cout这么好用难道就没有什么解决办法吗,其实是有的,在main函数里面写上:
  // 写在main函数里面的第一行即可让C++IO流得到加速~~~
  ios::sync_with_stdio(false);
  cin.tie(nullptr);
  cout.tie(nullptr);

  
 
  • 1
  • 2
  • 3
  • 4
  • 时间复杂度大,常常是多层循环或者深递归导致。建议大家能不用循环的时候,就不用循环,因为循环费时。

Runtime Error(运行错误)

简称RE。这种错误也是好避免的。
常见的RE有以下几种:

  • 数组开得太小了,导致访问到了不该访问的内存区域
  • 发生除零错误
  • 大数组定义在函数内,导致程序栈区耗尽
  • 指针用错了,导致访问到不该访问的内存区域
  • 程序抛出了未接受的异常(尤其是Java语言,大部分运行错误都是因为空指针异常–>找不到对象)
  • 段错误:数组越界、dfs栈溢出

文章来源: blog.csdn.net,作者:爱玲姐姐,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/jal517486222/article/details/78760927

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。