1426 - Find N Unique Integers Sum up to Zero
description
Given an integer n
, return any array containing n
unique integers such that they add up to 0
.
Example 1:
Input: n = 5 Output: [-7,-1,1,3,4] Explanation: These arrays also are accepted [-5,-1,1,2,3] , [-3,-1,2,-2,4].
Example 2:
Input: n = 3 Output: [-1,0,1]
Example 3:
Input: n = 1 Output: [0]
Constraints:
1 <= n <= 1000
submission
impl Solution {
// another solution would be [1, n] and -n(n+1)/2
pub fn sum_zero(n: i32) -> Vec<i32> {
// collect [-n/2, n/2]
(-(n / 2)..=(n / 2))
// filter out 0 if n is even
.filter(|&i| n % 2 == 1 || i != 0)
.collect()
}
}