程序错误自检帮助

来源:互联网 发布:淘宝手机端免费视频 编辑:程序博客网 时间:2024/05/17 22:17
程序错误自检帮助
这周的解题报告周日不知道能不能出来,因为星期六晚上写的时候sicily妹子生病登陆不了了, 所以先放一篇文章将就着吧。

当你的程序提交后返回的不是accept时,不要着急先自己冷静下来检查。
 
首先先把程序完全看一遍,看看有没有打错的地方导致程序的功能与自己想表达不一致,比如 if (ans==1) 打成 if (ans=1) 这样的错误算是语法错误吧。
 
在确认语法错误后,再确认一下程序的功能是按照你的思路去运行的,也就是说你确定你已经把你的思路完全表达出来了,这一阶段在于检查你自己的程序的逻辑。通常可以采用在程序运行中途的时候输出一些值看看这些值是否和你手工运行你的程序流程得到的输出值一致
 
而假设你确定是你的思路出错时,也不要急着把程序删掉,把他保存起来,因为第一可能你现在的思路还是错的,旧的思路往前一步才是对的呢?或者你的旧程序有部分是对的可以直接拷贝出来用于新程序。反正把旧的保留也无伤大雅不是么 



常见错误对应关系:
Wrong Answer:思路错误,语法错误

Time Limit Exceed: 你的程序太负责或者太笨重导致运行超过题目运行时间限制。我们判断程序是否超时的一个大概标准时程序1秒约执行1亿条语句。比如判断n个数是否素数。对于每次判断需要循环(根号n)次,那么最后判断这n个数是否素数的运行次数大概是 n*(根号n)

Memory Limit Exceed:你申请的内存超过了题目限制,一般大概的估计法是一千万个int类型大概占用30mb
另外不要在函数内部声明大数组,因为函数分配变量的内存默认是小于16mb的(我没记错的话)

Runtime Error:这个错误的最常见的诱因是你在使用数组时下标超过了数组的大小导致,还有除数为0以及其他一些乱七八糟的逻辑错误导致

PE:检查是否有多余(遗漏)的空格和回车 
0 0
原创粉丝点击