Every day a leetcode
题目来源:1822. 数组元素积的符号
解法:遍历
遍历一次Nums数组,统计负数的个数,以及是否出现0.
若出现0,break,直接return 0。
若没有0,则看负数的个数,若为偶数,return 1;否则,return -1。
代码:
int arraySign(int* nums, int numsSize){
int n_num=0;
bool zero=true;
for(int i=0;i<numsSize;i++)
{
if(nums[i] == 0)
{
zero=false;
break;
}
else if(nums[i]<0) n_num++;
}
if(zero)
{
if(n_num%2) return -1;
else return 1;
}
else return 0;
}
结果: