给"求最大子段和"造三组极端数据。
算法进阶 · 小纸条
选一章打印。双面打印(按长边翻页)后沿虚线剪开,每张卡片正面题目、背面答案。
什么时候才该考虑卡常?
超时的第一反应该是什么?
一万乘一万的整数数组多大?
四小时四道题,你会怎么排?
为什么换题反而有帮助?
把这五条抄在草稿纸上。
不清空会出现什么现象?
时间戳标记法是什么意思?
保留两位小数时 3 该输出什么?
参考答案(家长):确认复杂度已经正确,只差一点点的时候。
参考答案(家长):全负数、全正数、只有一个元素。
参考答案(家长):约 400MB,通常超限。
参考答案(家长):重新看数据范围,判断该用什么复杂度。
参考答案(家长):换个思路环境会松动,也避免在一处耗光时间。
参考答案(家长):前十分钟通读,最后半小时检查,中间按把握分配。
参考答案(家长):上一组的残留混进来,答案时对时错,极难查。
参考答案(家长):形成固定习惯,考场上不会漏。
参考答案(家长):3.00。
参考答案(家长):记录每格上次被用是第几组,不同就当作空。
为什么一次输出更快?
这属于卡常还是换算法?
想想上次卡住是怎么过去的。
为什么关注别人有害?
定一个赛后复盘的习惯。
统计你各类题的数量和正确率。
挑一类连做三道。
看完题解后你会做什么?
按这个方式记一道错题。
什么时候用它?
参考答案(家长):卡常,复杂度没变但常数小了。
参考答案(家长):减少了大量系统调用。
参考答案(家长):会打乱节奏,也影响判断。
参考答案(家长):多数人是换题或休息后想通的。
参考答案(家长):正确率最低的那类,就是接下来要补的。
参考答案(家长):赛后两天内复盘,印象最深。
参考答案(家长):合上独立重写,隔几天再写一次。
参考答案(家长):第三道明显比第一道顺,就说明有效果。
参考答案(家长):答案深度不大、但状态很多、广搜内存吃不消时。
参考答案(家长):记思维过程才能避免重犯。
为什么估值不能高估?
2 的 40 次方拆半后是多少?
随机化的风险是什么?
为什么要允许往差的方向走?
分块的复杂度通常是多少?
这属于什么思想?
什么时候不能离线?
这体现了什么?
什么场景像二分图匹配?
这个模型能解决什么问题?
参考答案(家长):两个 2 的 20 次方,约一百万,完全可行。
参考答案(家长):高估会让真正的最优解被排到后面,结果就不对了。
参考答案(家长):不然会卡在小山头上,看不到远处的高峰。
参考答案(家长):有小概率出错,要评估这个概率能不能接受。
参考答案(家长):离线处理 —— 先收集所有查询再统一安排顺序。
参考答案(家长):根号级别,比线性快、比 log 慢,但好写。
参考答案(家长):很多问题都能转化成图论问题。
参考答案(家长):后面的查询依赖前面的答案时。
参考答案(家长):最大匹配、最小割、资源分配一类问题。
参考答案(家长):如学生选社团、任务分配给人。