Leetcode 1304:和为零的N个唯一整数(超详细的解法!!!)
程序员文章站
2022-07-12 08:51:27
...
给你一个整数 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
如有问题,希望大家指出!!!
上一篇: p1004方格取数
下一篇: leetcode213. 打家劫舍 II