1304. Find N Unique Integers Sum up to Zero

Source: https://leetcode.com/problems/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

思路:偶数关于原点对称,奇数加上一个0

class Solution {
public:
    vector<int> sumZero(int n) {
        vector<int> ans(n);
        if(n==1){
            ans[0]=0;
            return ans;
        }
        if(n%2==0){
            for(int i=0;i<n/2;i++){
                ans[i]=i+1;
            }
            for(int i=n/2;i<n;i++){
                ans[i]=-ans[i-n/2];
            }
            return ans;
        }
        else{
            ans[0]=0;
            for(int i=1;i<=n/2;i++){
                ans[i]=i;
            }
            for(int i=n/2+1;i<n;i++){
                ans[i]=-ans[i-n/2];
            }
            return ans;
        }
    }
};
1304. Find N Unique Integers Sum up to Zero1304. Find N Unique Integers Sum up to Zero y625658683 发布了17 篇原创文章 · 获赞 0 · 访问量 405 私信 关注
上一篇:3 Sum Closest


下一篇:DevExpress XtraReports 入门三 创建 Master-Detail(主/从) 报表