强哥写的。
1. 是否需要 long long
2. 是否有 除0 的可能
3. 是否需要cmp特判精度
4. 是否必须使用double,能转化成整数运算么?怎么转换
5. 关键部分无序的问题->贪心?sort是否管用?满足怎样的顺序可以找到解(最优解)?满足某一顺序是否可以dp?graph问题?netflow?
6. 关键部分变量的取值区间是多少,可以枚举么?
7. vriable的取值范围非常大,无法枚举:是否可以仅仅使用给定的vriable(离散化)?最优解是否满足单调性,是否可以二分答案?
8. 这个问题是不是某些地方满足什么性质,大胆guess!
9. 找规律。。
10. 需要使用什么结构?最好使用哪种数据结构?
11. 关联的数学知识!
12. 正着不好做,如果反过来可以么?
13. 最优解是否是某种 极限/最值 的组合?
14. 过了系统的pretest之后,自己至少再出3组边界数据测试。
15. 递推/递归关系问题,先找到关系,再考虑优化。
16. 对于有精度要求的问题,能用 int 和 long long就一定不要用double,哪怕使用biginteger,也不要使用double,在表示的数字很大但仍旧在long long范围之内时,double很可能会丢失精度。
17. 当修改某部分代码的时候,想一下对代码整体会有什么影响,其他地方是否需要修改。
18. coding前务必严格计算复杂度;决不先做麻烦的模拟题;决不先试很可能TLE的题;决不先写自己可以搞但编码量明显很大的题目。