首页 > 解决方案 > 如何比较两个数组元素的平方和?

问题描述

我在 codewars.com 做 katas(练习)练习我在 Python 中的学习。这是卡塔:

给定两个长度为 的整数数组a,创建一个程序,如果 in 每个元素的平方和严格大于in 每个元素的平方和,则返回。b>= 1Trueab

这是我尝试过的代码:

def array_madness(a,b):
    a = sum(i**2 for i in a)
    b = sum(i**2 for i in b)

    return True if a > b else False

这是我需要通过的测试:

test.assert_equals(array_madness([4, 5, 6], [1, 2, 3]),True)
test.assert_equals(array_madness( [1, 2, 3],[4, 5, 6]),False)

标签: python

解决方案


您错误地复制了问题描述。它是 的平方a,以及 的立方b(它对两个数组进行不同的计算)。以下应该有效:

def array_madness(a,b):
    return sum(i**2 for i in a) > sum(i**3 for i in b)

推荐阅读