*** 竞赛中的各种低级错误,及编程常见错误小结 ***
编写代码常见错误:
1.递归时隐藏的修改了全局变量例如点分治重心 →每次复制一遍
2.测试数据时未将空间开到题目要求,隐藏的空间倍数关系例如无向图2倍 →RE
3.除数是个减法式子 整数→RE 浮点数→WA →特判
4.离线并查集的重复操作 →只有第一次才需要unite
5.回溯暴搜的复杂度是阶乘级或者指数级 →看到正常数据的题再爆搜就可以完蛋了
6.乘法取模,a×b →a%MOD×(b%MOD)%MOD
7.two pointers的时候,相等时移动指针 →小心重复数据,死循环
8.利用欧拉定理降幂的时候xn% MOD,特判x%MOD==0 →此时答案是0
低级错误:
1、写错文件名,包括程序文件名,输入输出文件名,还包括大小写出错。
2、没有去掉调试信息,或者调试时注释掉文件输入输出没有去掉,或者加了system("pause");
3、输出格式错误,多输出空格,或者结果中间无故换行。
4、开大了数组或者开小了数组。。。
5、乱用memset,乱用 STL
6、打错字母,数字 1 与字母 l
7、数据范围要看清楚,要不要开long long,会不会炸int
8、注意题目输入输出格式, 不要把全局变量和临时变量 作用域搞混了
9、 切记 不要 CE ME , 注意windows dev 会自动缓存加载一些头文件,看清楚是否编译器参数是 C++11
10、爆 int
11、多组数据时,没有清空数组