OVSolitario-io

导航

隐形错误汇总

多步操作: 每步的操作次数多与少隐形
关于多步骤操作,计算时间复杂度得出至少构造O(1),但隐性的是存在步骤1多于步骤2,将O(n)操作迁移到步骤2则可过

int溢出: 1.0*int(/除法)类型转换,但原类型int范围远小于double,导致int范围不够大小溢出

善用乘法而不是除法:除法存在取整问题,且乘法的速度更快

关于数组类型的存储空间:应当为类似大O计算法:即题目N大小+M操作都为存储型的空间的大小

关于if else:分支增加加大了理解的难度,正向的考虑单独合法情况,逆向的将all不合法一次性排除更为有效

多组测试数据:对于多组测试数据,当枚举方式过大时,考虑是否可以采用一次性构造的方法,构造出区域all合法,做O(1)查询

什么是初始条件:初始条件不一定仅限定为边界或者起始点,对于那些固定的值我们也可以视作初始条件

几种污染情况:两层for循环ij,当将dp[i]赋初值写在内层时,每次调用j都将初始化dp[i],使其每次从初值开始转移(应该是上层更新值),导致错误

数量n与方案n存入公共用:当存在共用时,外层循环每次方案n--,内层查询物品1~n,随着n--内层n不断减小

1的1e9乘方:1的1e9次乘方,卡掉

空间大小:对于空间大小,有限制n<k,但当呈现组合形式如n * n,n+n形式时,大小为组合值

memset:只能初始化0/1,忘记了初始化了-INF导致错误(应该数组跑)

对于数+-:x-(k为负数时) = x --k = x + k,所以对负数k:x+k保险

STL空调用:使用STL调用要注意容器不能为空,否则将RE错误

posted on 2025-07-11 15:08  TBeauty  阅读(261)  评论(0)    收藏  举报