此文以祭奠因低级错误而导致调试很久而失去的时间。
20130302
取模的时候,如果写成这样:
a = b%M * c%M * d%M
要保证b,c,d在M以内,否则要写成
a = (((b%M) * (c%M)) * (d%M))%M
20130305
题目说“对答案mod 1000000007"指的是要“(x%M+M)%M"而不是“x%M"
即答案需为正数。
20130306
Splay中,删除节点时,将root改为某个节点,还要将该节点的父亲设为0.
20130311
写线段树的动态建树时,养成这样的习惯:
1、建立一个null指针,幷将它初始化成不会在pushup时对答案造成贡献。
2、每当要从一个节点向下走时,建立它为null的儿子(两个)(“向下走”包括修改和查询)
20130315
写AC自动机,构建fail数组时,不要忘了qu.push(v)。两次因为这个错了。
20130324
写值域线段树时不要惯性的就将区间范围限制为[1,...],要考虑0是否是可能的值。