这道题的最优解只有五行,我想了半小时。这套流程走下来,我从头到尾又确认了一遍。我打开了这题的题解,发现最优解只有四行。真香定律准时生效

动态规划三步走:定义状态、写转移方程、看题解。我停了一下,然后继续手上的活。我把这个技巧抄进了自己的模板本,希望以后能想起来。幸好之前留了备份

算法里最难的部分是把现实问题翻译成状态定义。我抬起头看了看周围,大家都一样。我把边界条件单独列了一页纸,贴在显示器边上。好在最后有惊无险

面试官说我思路可以,但代码写得像在写业务。我把整条链路在心里复盘了一遍。我在心里默默给这道题标了个「三刷」,虽然不会再刷。这条经验值直接拉满

这个数据结构选错了,后来的每一行都在补救。我盯着屏幕,觉得这才是我的一天。我把这个排序换成了稳定的,后面的逻辑终于对了。复盘会上我们把它列成了案例

刷题周赛打了三个月,rating 从 1500 涨到 1505。我重新看了一遍手上的计划,把风险项标了出来。我把这个双指针的移动条件改了一下,特殊用例终于过了。我沉默了,但心里是服的

刷了两百道题之后发现:模板我都知道,但题目它不按模板出。我想了想自己这些年,好像确实如此。我在纸上把递归的调用栈画了一遍,终于找到了重复计算。我把这条经验写进了团队 wiki

算法书上写着"显然可得",我盯着那行显然看了一个小时。我想了想自己这些年,好像确实如此。我在心里把这道题的时间限制算了一遍,决定放弃一种写法。我把它写进了组内的避坑文档第一章

这题我写了三种解法,性能最好的是最丑的那个。我盯着屏幕沉默了十分钟。我把这个位运算的技巧记了下来,虽然不知道什么时候用。第二天这个方案就变成了团队标准做法

我把它想成了一道数学题,然后就卡住了。我在心里把涉及的所有环节都过了一遍。我把这题的暴力解法先写了出来,至少能过一半用例。复盘会上我们把它列成了案例