ruozhi 小错误
弱智错误记录
前言
2024.08.03 从 2024.08.03 开始记载,旧账就不记了。
2024.09.23 我最擅长的事情就是写 bug 了。期望 \(400pts\),实际 \(220pts\),比 CSP-J2023 挂得还猛。
2024.09.30 回顾了两个月的弱智记录,真是很有意思,足够抽象。ssyx 座右铭不敢写不开 long long 见祖宗和菜就多练是多么遗憾的事情。可惜 ssyx 当年没有能懂我这个座右铭的朋友。
2024.10.30 静态查错成功率太低,主要是我特别眼瞎。还是选择手模小样例查错法吧,虽然比较麻烦。或者选择先静态查错再手模小样例的方法。
2024.11.1 发现好像写错变量名才是最常见的错误,不过也许是因为这种错误小样例就可以查出来,不像没开 long long 那么难查,因此这种错误相对不那么被大家厌恶吧。
记录
不开 long long 见祖宗!
2024.09.12 写打表程序,由于数字之间是空格,故再写一个程序把空格转为 ,
,然后这个程序没开 long long,且原程序的存表数组也没开……
2024.09.13 存逆序对个数忘记个数是 \(O(n^2)\) 级别的了。
2024.10.18 写 (long long)=(int)*(int)
没有开 1ll
。
2024.10.21 线段树函数 maketag 参数没开 long long,喜获 \(95pts\)。
2024.10.17 将 long long
类型数组 memset
成 0x3f
,然而判断相等的时候 inf=0x3f3f3f3f
,是 int
类型的常量。
2024.11.18 差积没有开 long long。
左移右移溢出
2024.09.23 写了个 1<<O(1e5)
的东西。
2024.09.23 写了个 1>>32
。
2024.10.05 写了个 n>>k
,其中 \(k \le 10^5\)。
看错题
2024.09.10 把输出最大值看成输出编号,关键还过了样例。
2024.09.23 t1 没看到向下取整。
2024.10.07 没看到 \((x,y)\) 在花园里,以为可以出界。
2024.10.09 雨天的尾巴把值域看成了 \(n\)。
2024.11.20 无解输出 IMPOSSIBLE
,我输出了 -1
。
2024.11.29 没看到题目写着操作只能对长度至多为 \(3\) 的区间进行,导致以为是不可做题(虽然确实是不可冲正解题)。
文件读写
2024.08.03 stdout
\(\to\) stdin
。
2024.09.29 都怪 Dev 的缺省源,害我没改文件读写直接关掉 LOCAL
交了题目。文件读写写的还是 in.txt my.out
。
调试代码
2024.08.04 提交不注释调试代码。
小笔误
2024.09.06 因为一个 =
写成了 +=
调了好几天
2024.11.04 把 while
写成了 if
。
2024.11.15 把 ++
写成了 --
。
2024.11.19 把 b[i]
写成了 i
。
2024.11.29 把 _add()
写成 add()
。
忘记取模
2024.11.26 线段树 pushup 一个地方忘记取模。
变量名
2024.08.04 \(i\) 写成 \(j\)。
2024.08.06 \(u\) 写成 \(i\)。
2024.09.19 \(b\) 写成 \(a\)。
2024.10.14 \(v\) 写成 \(u\)。
2024.10.18 \(val\) 写成 \(w\)。
2024.10.22 \(wa\) 写成 \(ca\)。
2024.10.30 \(m\) 写成 \(n\)。
2024.11.1 结构体内变量名 \(cnt\) 与全局变量重名,\(::cnt\) 写成 \(cnt\)。
2024.11.26 模数 \(p\) 与结构体中 zkw 线段树的虚点 \(p\) 变量名冲突。
写错类型
2024.09.14 把字典树的儿子数组写成了 char,鉴定为有 \(26\) 个字母儿子且变量名为 \(ch\) 误导导致。
数组没开够
2024.09.12 把 $100 % $ 的 \(3\times 10^5\) 看成部分分的 \(1\times 10^5\) 了。
2024.09.19 由于有多个常量,把某个数组开成了另一个大小。
2024.09.22 FFT 数组没开两倍。
2024.09.23 \(cnt\) 数组应该开 \(\log_2=32\) 个,然后我开了 \(20\)。
下标越界
2024.10.05 只开了 \(n\) 的数组,忘记判 \(len=n\) 的情况,导致出现了 \(len+len\) 的下标。
时间复杂度写假
2024.10.10 不小心套了个快速幂导致多一只 \(\log\)。
时间复杂度估算错误
2024.09.14 在字典树上查找有多少个单词属于一个字符串的后缀,由于所有单词的长度不超过 \(N\),最多只有 \(\sqrt{N}\) 个单词。
2024.11.26 \(\sum_{i=1}^m \frac{m}{i} = m \log m\)。没看出是调和级数,我以为是 \(m^2\) 级别。
初始化
2024.08.04 多测不初始化。
2024.09.23 分块重构块 \(tag\) 忘记初始化为 \(0\)。
初值问题
2024.09.10 写 \(a_i\not = a_{i-1}\) 的条件,且 \(a_1=0\),下标从 \(1\) 开始,忘记给 \(a_0\) 赋值为 \(-1\)。
2024.10.24 整除分块,忘记第一次扫到值 \(\ge T\) 的时候需要将指针初始为 \(1\)。
2024.11.03 线段树乘法懒标记没有初始化为 \(1\)。
语法不熟悉
2024.09.22 sizeof
长度忘记乘上类型所占字节数。
2024.11.20 queue
默认初始空间是 \(32\) 个单位,不可以在任意时刻开 \(4 \times 10^6\) 个 queue
,否则程序会卡住并被杀死。
算法板子打错
2024.09.09 分解质因数忘记 \(>\sqrt{n}\) 的那个质因数。
2024.09.23 NTT 求 \(rev\) 数组把 len-1
写成了 1<<(len-1)
。
2024.10.14 Dijkstra 优先队列优化松弛操作先 push 再修改 dis,并且调了一个晚上。
2024.10.22 线段树区间查询结束递归条件写成了单点查询的 l==r
。
2024.11.13 埃氏筛标记合数的时候把 j++
写成了 j+=i
,原因是把标记 \(j\) 和标记 \(i\times j\) 的两种写法搞混了。
混淆
2024.11.28 把 (n>>1)+1
写成了 n>>1|1
,和 n<<1|1
的线段树写法搞混了。
抽象做法
2024.11.26 只有单点、区间加,最后才有一次询问的不需要线段树,可以直接差分前缀和。
本文来自博客园,作者:liyixin,转载请注明原文链接:https://www.cnblogs.com/liyixin0514/p/-/shit