python 數組中數字求和是否為零


需求是:

給定一個不少於4個元素的list(4個元素不重復):
請確認是否存在這樣的4個元素,使得四數之和為0?如果有打印出符合條件的四個元素,如果沒有打印False
#!/usr/bin/python3
# -*- coding: utf-8 -*-

# 定義數據
nu = [1, -1, -2, -3, 6, 7, 8, -9]
nu_len = (len(nu))
result = []

# 列出數組index所有排列組合且長度為4
for i in range(1, nu_len):
    for j in range(1, nu_len):
        for k in range(1, nu_len):
            for h in range(1, nu_len):
                # 排序以便去重
                a = sorted([nu[i], nu[j], nu[k], nu[h]])
                b = sum(a)
                if b == 0:
                    # 去掉重答案
                    if a not in result:
                        result.append(a)

# 判斷result是否有值
if not result:
    print(False)
else:
    print(result)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM