经验贴
算法基础系列
记录算法中遇到的经验,持续更新中
- 遇到没有输出结果的(Segmentation Fault),用函数
exit(0)
调试
- 知识有两类,记忆型和逻辑型,一个靠记忆一个靠练习
- 遇到不会的数学类型题,第一步尽力分析,第二步打表找规律
- 上取整怎么写?方法一:调用
ceil()
函数,返回的是一个double
类型的值(需要强制类型转换) ;方法二:用下取整转换为上取整,例如:上取整a/b
等于 下取整(a+b-1)/b
- 涉及到
i-1
或者j-1
的数组,从1
开始 更好,不用处理边界问题
- 排列:指的是不重复出现
%02d
表示不足两位在左边补零
- 调试技巧: 一是用输出函数,也可以用
exitt(0)
;二是用注释法,找到bug位置
- 做题思路:枚举你的方法
①枚举 ②二分 ③dfs ④贪心 ⑤dp 都没思路 可以下一题了
- 常见优化:
①如果只增加数而不减少,用一个最大值max()
记录即可
②如果有增有减,用 优先队列优化