ruozhi 小错误
弱智错误记录
前言
2024.08.03 从 2024.08.03 开始记载,旧账就不记了。
2024.09.23 我最擅长的事情就是写 bug 了。期望 ,实际 ,比 CSP-J2023 挂得还猛。
2024.09.30 回顾了两个月的弱智记录,真是很有意思,足够抽象。ssyx 座右铭不敢写不开 long long 见祖宗和菜就多练是多么遗憾的事情。可惜 ssyx 当年没有能懂我这个座右铭的朋友。
2024.10.30 静态查错成功率太低,主要是我特别眼瞎。还是选择手模小样例查错法吧,虽然比较麻烦。或者选择先静态查错再手模小样例的方法。
2024.11.01 发现好像写错变量名才是最常见的错误,不过也许是因为这种错误小样例就可以查出来,不像没开 long long 那么难查,因此这种错误相对不那么被大家厌恶吧。
2025.02.10 有一段时间忘记记录了,那就从今天开始继续吧!
2025.02.25 发现静态查错能力提高了不少,我认为是打 ABC 的功劳。
记录
不开 long long 见祖宗!
2024.09.12 写打表程序,由于数字之间是空格,故再写一个程序把空格转为 ,
,然后这个程序没开 long long,且原程序的存表数组也没开……
2024.09.13 存逆序对个数忘记个数是 级别的了。
2024.10.18 写 (long long)=(int)*(int)
没有开 1ll
。
2024.10.21 线段树函数 maketag 参数没开 long long,喜获 。
2024.10.17 将 long long
类型数组 memset
成 0x3f
,然而判断相等的时候 inf=0x3f3f3f3f
,是 int
类型的常量。
2024.11.18 差积没有开 long long。
2025.2.10 题目满足输入和输出在 int
范围内,我以为出题人会友好地让过程也在 int
范围内。
2025.2.11 线段树 long long
类型的 query
函数,中间变量没有开 long long
。
左移右移溢出
2024.09.23 写了个 1<<O(1e5)
的东西。
2024.09.23 写了个 1>>32
。
2024.10.05 写了个 n>>k
,其中 。
看错题
2024.09.10 把输出最大值看成输出编号,关键还过了样例。
2024.09.23 t1 没看到向下取整。
2024.10.07 没看到 在花园里,以为可以出界。
2024.10.09 雨天的尾巴把值域看成了 。
2024.11.20 无解输出 IMPOSSIBLE
,我输出了 -1
。
2024.11.29 没看到题目写着操作只能对长度至多为 的区间进行,导致以为是不可做题(虽然确实是不可冲正解题)。
2025.02.25 题目输入每个节点的父亲编号,我以为是输入每条边。
文件读写
2024.08.03 stdout
stdin
。
2024.09.29 都怪 Dev 的缺省源,害我没改文件读写直接关掉 LOCAL
交了题目。文件读写写的还是 in.txt my.out
。
2025.02.25 写了 freopen("my.out","r",stdout);
。
调试代码
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.09.09 _add(a,b)
定义里面 没有加引用。
2024.02.15 把 _mul
写成 mul
。
忘记取模
2024.11.26 线段树 pushup 一个地方忘记取模。
变量名
2024.08.04 写成 。
2024.08.06 写成 。
2024.09.19 写成 。
2024.10.14 写成 。
2024.10.18 写成 。
2024.10.22 写成 。
2024.10.30 写成 。
2024.11.1 结构体内变量名 与全局变量重名, 写成 。
2024.11.26 模数 与结构体中 zkw 线段树的虚点 变量名冲突。
2025.02.25 两层循环都使用变量名 。
写错类型
2024.09.14 把字典树的儿子数组写成了 char,鉴定为有 个字母儿子且变量名为 误导导致。
数组没开够
2024.09.12 把 的 看成部分分的 了。
2024.09.19 由于有多个常量,把某个数组开成了另一个大小。
2024.09.22 FFT 数组没开两倍。
2024.09.23 数组应该开 个,然后我开了 。
2024.01.03 ,因此 。
2025.01.03 终点的坐标的取值范围,除了考虑起点坐标,不要忘了考虑操作的影响。
2025.2.10 线段树没开 倍。
2025.3.2 省选 Day2 t2 数组没有开够挂了 。无向图的边应当是 而不是 的。
下标越界
2024.10.05 只开了 的数组,忘记判 的情况,导致出现了 的下标。
2024.12.19 树上背包问题,加入点 时没有判点 的体积是否越界。
corner cases
2025.02.15 没判 。
时间复杂度写假
2024.10.10 不小心套了个快速幂导致多一只 。
2025.02.25 注意 resize
的空间时间复杂度也是 的。
时间复杂度估算错误
2024.09.14 在字典树上查找有多少个单词属于一个字符串的后缀,由于所有单词的长度不超过 ,最多只有 个单词。
2024.11.26 。没看出是调和级数,我以为是 级别。
初始化
2024.08.04 多测不初始化。
2024.09.23 分块重构块 忘记初始化为 。
2024.12.17 有两处忘记清空桶。
2025.01.02 重载矩阵乘法运算符,临时变量没有清零。
2024.02.11 线段树非叶子结点的 标记没有初始化。
初值问题
2024.09.10 写 的条件,且 ,下标从 开始,忘记给 赋值为 。
2024.10.24 整除分块,忘记第一次扫到值 的时候需要将指针初始为 。
2024.11.03 线段树乘法懒标记没有初始化为 。
语法不熟悉
2024.09.22 sizeof
长度忘记乘上类型所占字节数。
2024.11.20 queue
默认初始空间是 个单位,不可以在任意时刻开 个 queue
,否则程序会卡住并被杀死。
算法板子打错
2024.09.09 分解质因数忘记 的那个质因数。
2024.09.23 NTT 求 数组把 len-1
写成了 1<<(len-1)
。
2024.10.14 Dijkstra 优先队列优化松弛操作先 push 再修改 dis,并且调了一个晚上。
2024.10.22 线段树区间查询结束递归条件写成了单点查询的 l==r
。
2024.11.13 埃氏筛标记合数的时候把 j++
写成了 j+=i
,原因是把标记 和标记 的两种写法搞混了。
2025.01.03 求组合数 的时候,判无解除了 的情况,还需要考虑 的情况。
2025.02.14 树上启发式合并遍历轻儿子时忘记判掉重儿子。
2025.02.18 dinic 算法的当前弧优化应当是在循环里面写 cur[u]=i
,如果将 定义为 的引用,时间复杂度会假。
混淆
2024.11.28 把 (n>>1)+1
写成了 n>>1|1
,和 n<<1|1
的线段树写法搞混了。
2024.02.15 求 的幂的线性逆元时,把乘上 写成阶乘逆元的乘上 。
抽象做法/算法理解不透彻
2024.11.26 只有单点、区间加,最后才有一次询问的不需要线段树,可以直接差分前缀和。
2024.12.17 使用无符号自然溢出作为因数含有 的 次幂的 hash 模数。
2024.12.30 fhq 平衡树合并会改变结点的儿子关系,所以找子树的最大或最小值需要先找完再和另外一棵树合并。
2024.01.03 使用无符号自然溢出作为判定行列式是否为 的模数,一旦出现 的很多倍相乘,就会全部是 。
2025.01.09 认为把一条边拆成两条边,计算最小生成树的时候会算到重边。
本文来自博客园,作者:wing_heart,转载请注明原文链接:https://www.cnblogs.com/wingheart/p/-/shit
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!