因为睿智错误过多,所以在这里梳理一下。数组
大概爆过2~3次。测试
能够在每次打代码的板子里面,直接加个这样一段代码spa
#define CM cerr<<(&S2-&S1)<</1024./1024.<<"MB<<endl bool S1; …… bool S2; int main(){ CM; …… return 0; }
这类错误也犯过不仅2次了。debug
能够在检查的时候,使用Ctrl+Shift+f,把scanf,printf,cout,cerr这些语句直接找出来,一个个看过去。code
在检查输入的时候,要把输入的格式与本身的读入变量一个个对过来。内存
爆long long!爆long long!!爆long long!!!string
每次结束的时候把变量名一个个看过来,从新计算一下会不会爆限制。io
这也是常常犯的问题,前几天刚出过这类问题……class
要注意在开的数组里面,检查一下会不会调用数组的时候,调用到后面的内存去了,或者多维的时候打错维了变量
最好还要测试一下极限数据,这样对检查颇有帮助。
多case必定要注意清零!死了多少次不知道了……
不要手打模数(在能复制的前提下),最好是复制题目所给定的模数。
最好是把样例通通对一遍。这样比较保险。
还有就是能对拍就对拍,别嫌麻烦(除非那种没有意义的,好比答案大部分时间为0什么的)
既然你切分都打下来了,而且已经知道他是对的了,就别忘记去掉对拍时加上的注释!
最好是打一个list,把要检查的项目写下来,检查过程当中一个个对过去。
睿智错误/不应错的点:
希望此次\(30+30+0\)能给本身一个深入的教训。
线段树Down操做-1写成+1 丢 15分
T2 容斥 取模不规范 丢 20分
又只考了 100 + 20 + 55 = 175 垫底了……