1. 程式人生 > >領口要求真的高/三數之和 給定一個包含 n 個整數的陣列 nums,判斷 nums 中是否存在三個元素 a,b,c ,使得 a + b + c = 0 ?找出所有滿足條件且不重複的三元組。 注意:答

領口要求真的高/三數之和 給定一個包含 n 個整數的陣列 nums,判斷 nums 中是否存在三個元素 a,b,c ,使得 a + b + c = 0 ?找出所有滿足條件且不重複的三元組。 注意:答

import itertools
from functools import reduce
l=[]
l1=[-1,0,1,2,-1,-4]
m=list(itertools.combinations(l1,3)) #為了拿出所有的三元組 數學組合
lis=[]#用來新增目標列表
for n in m:
b=reduce(lambda x,y:x+y, n)#題幹要求求和
if b==0:
if sorted(n) not in lis:#這一步是為了去掉重複的元素
lis.append(sorted(n))#題意答案
else:
continue
print(lis)

貢獻思路,程式碼暫時不規範