题目:
和为零的N个不同整数
解题思路:
依照题意构造即可。注意代码的简洁性和对称性。
代码:
int sumZero(int n, int returnSize){
int ans = malloc(sizeof(int) n);
for (int i = 0 ; i < n ; i++){
if (n % 2 == 1)
ans[i] = i - (n - 1) / 2;
else if (i < n / 2)
ans[i] = i - (n / 2);
else
ans[i] = i - (n / 2 - 1);
}
*returnSize = n;
return ans;
}
链接:模拟法解题
Leetcode 题解 - 巧妙构造
参与讨论
还没有评论呢!