检查包含质数的数组的乘积是否在Python中是一个完美的平方

假设我们有一个包含所有素数的nums数组。我们必须检查以num表示的所有数字的乘积是否是一个完美的平方。

因此,如果输入类似于nums = [3,3,7,7],则输出将为True,因为以nums为单位的所有元素的乘积为441,这是一个理想的平方,如21 ^ 2 = 441。

示例

让我们看下面的实现以更好地理解-

from collections import defaultdict
def solve(nums) :
   m = defaultdict(int)
   for key in nums :
      m[key] += 1
   for key in nums :
      if m[key] % 2 == 1 :
         return False
   return True
nums = [3,3,7,7]
print(solve(nums))

输入

[3,3,7,7]
输出结果
True

猜你喜欢