千早Tihaya
254 字
1 分钟
Leetcode 3sum的一种较劣的解法
https://leetcode.cn/problems/3sum
几万年没碰 OI 了,闲的没事在学校写力扣的题玩玩,看到这道题压根想不起来双指针的事,然后口胡出了一个 的做法,过了。
具体地,考虑原式变形: 等价于 。此外,对 的具体下标无稳定性要求,可以对 进行排序,容易想到对于 , 进行 的暴力枚举,对 进行二分查找。
可以发现,这种算法复杂度为 ,对于极弱的 的数据完全可过。
关于一些小细节:
-
如何不重复 ?
我为了不被 3000 个 0 卡掉,就将 压缩了,每个节点为 ——值,——左端点,——右端点,——区间长度。准确地,。
好,那么如何不重复呢?很简单,你选用的点剩余长度够就行了。
-
去重吗?
本做法显而易见地无需去重,因为不存在可以被保存的合法答案是完全一样的。
Leetcode 3sum的一种较劣的解法
https://blog.mitufun.top/posts/leetcode-3sum的一种较劣的解法/