检查我们可以在Python中找到四个总和与否相同的元素的程序

假设我们有一个称为nums的数字列表和一个值k,我们必须检查列表中是否有四个唯一元素加起来为k。

因此,如果输入像nums = [11,4,6,10,5,1] k = 25,那么输出将为True,因为我们有[4,6,10,5]的总和为25。

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

  • 排序列表编号

  • n:= nums的大小

  • 对于i在0到n − 4的范围内,执行

    • l:= j + 1,h:= nums − 1的大小

    • summ:= nums [i] + nums [j] + nums [l] + nums [h]

    • 如果求和与k相同,则

    • 否则,求和<k,则

    • 除此以外,

    • 返回True

    • l:= l + 1

    • h:= h − 1

    • 当l <h时

    • 对于范围i +1至n − 3的j,做

    • 返回False

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

    示例

    class Solution:

       def solve(self, nums, k):

          nums.sort()

          n = len(nums)

          for i in range(n - 3):

             for j in range(i + 1, n - 2):

                l, h = j + 1, len(nums) - 1

                while l < h:

                   summ = nums[i] + nums[j] + nums[l] + nums[h]

                   if summ == k:

                      return True

                   elif summ < k:

                      l += 1

                   else:

                      h −= 1

             return False

    ob1 = Solution()nums = [11, 4, 6, 10, 5, 1]

    k = 25

    print(ob1.solve(nums, k))

    输入值

    [11, 4, 6, 10, 5, 1], 25

    输出结果

    True

    以上是 检查我们可以在Python中找到四个总和与否相同的元素的程序 的全部内容, 来源链接: utcz.com/z/326638.html

    回到顶部