检查Python数组中是否存在一个元素等于其余元素乘积


假设我们有一个名为nums的数组,我们需要检查该数组是否包含一个元素,其值等于所有其他元素的乘积。

例如,如果输入是nums = [3,2,24,4,1],则输出为True,因为24 = (3*2*4*1)。

为了解决这个问题,我们将遵循以下步骤:

  • mul := 1
  • 对于范围从0到nums大小-1的i,执行:
    • mul := mul * nums[i]
  • 对于范围从0到nums大小-1的i,执行:
    • 如果nums[i]等于(mul / nums[i]),则:
      • 返回True
  • 返回False

让我们来看下面的实现,以便更好地理解:

示例代码

在线演示

def solve(nums):
   mul = 1
   for i in range(len(nums)):
      mul *= nums[i]
 
   for i in range(len(nums)):
      if nums[i] == mul / nums[i]:
         return True
 
   return False
 
nums = [3,2,24,4,1]
print(solve(nums))

输入

[3,2,24,4,1]

输出

True

更新于:2021年1月15日

浏览量:127

启动您的职业生涯

通过完成课程获得认证

开始
广告