面试题,求解答
面试题,求解答
典型的 3Sum,leetcode 上有原题 https://leetcode.com/problems...
JavaScript 可以看下我的题解 https://github.com/hanzichi/l...
这道题也是职人介绍所老赵和 winter 手写的题,可以看下 https://zhuanlan.zhihu.com/p/...
立即学习“Java免费学习笔记(深入)”;
最好的方法貌似是 O(n^2) 的两边逼进
都确定是3个整数了……直接三重循环枚举啊…………
如同 @xiaoboost 說的, 使用簡單的暴力法就可以做出來:
<code class="python">import itertools
def nsum(lst, n, target):
count = 0
for c in itertools.combinations(lst, n):
if sum(c) == target:
count += 1
return count
if __name__ == '__main__':
lst = [-1, 3, -2, 7, -4, -3, 6, 9, -2, -2, 1, 1, 0, 10, -1, 9, 8, -12]
print(nsum(lst, 3, 0))</code>結果:
<code>22</code>
我回答過的問題: Python-QA
<code class="python">from itertools import combinations
def sum_is_sth(lst, sth=0, cnt=3):
return sum([1 for sub_lst in combinations(lst, cnt) if sum(sub_lst) == sth])</code>
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号