1304 Find N Unique Integers Sum up to Zero

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

继续盲目找自信...这题不太难,嘛,简单题嘛。主要是loop结束条件要保证不会out of bound。

public int[] sumZero(int n) {
    if (n < 1) {
        return null;
    }
    
    int[] result = new int[n];
    int pos = 1;
    int neg = -1;
    for (int i = 0; i + 1 < n; i = i + 2, pos++, neg--) {
        result[i] = pos;
        result[i + 1] = neg;
    }
    
    if (n % 2 != 0) {
        result[n - 1] = 0;
    }
}

java}    return resul

Last updated