Leetcode 1304:和为零的N个唯一整数(超详细的解法!!!)

给你一个整数 n,请你返回 任意 一个由 n各不相同 的整数组成的数组,并且这 n 个数相加和为 0

示例 1:

输入:n = 5
输出:[-7,-1,1,3,4]
解释:这些数组也是正确的 [-5,-1,1,2,3],[-3,-1,2,-2,4]。

示例 2:

输入:n = 3
输出:[-1,0,1]

示例 3:

输入:n = 1
输出:[0]

提示:

  • 1 <= n <= 1000

解题思路

这个问题非常简单,假设左边界为l右边界为r,那么r-l=2(n-1)。由题意可知左右区间内的元素互为相反数,那么l=-r,那么r=n-1并且l=1-n

class Solution:
    def sumZero(self, n: int) -> List[int]:
        return list(range(1 - n, n, 2))

我将该问题的其他语言版本添加到了我的GitHub Leetcode

如有问题,希望大家指出!!!

发布了706 篇原创文章 · 获赞 443 · 访问量 81万+

猜你喜欢

转载自blog.csdn.net/qq_17550379/article/details/103793911