Sign of the Product of an Array

easy math scan

Problem

Return 1 if the product of nums is positive, −1 if negative, 0 if any element is 0.

Inputnums = [-1,-2,-3,-4,3,2,1]
Output1
Four negatives → product positive.

def array_sign(nums):
    sign = 1
    for x in nums:
        if x == 0: return 0
        if x < 0: sign = -sign
    return sign
function arraySign(nums) {
  let sign = 1;
  for (const x of nums) {
    if (x === 0) return 0;
    if (x < 0) sign = -sign;
  }
  return sign;
}
class Solution {
    public int arraySign(int[] nums) {
        int sign = 1;
        for (int x : nums) {
            if (x == 0) return 0;
            if (x < 0) sign = -sign;
        }
        return sign;
    }
}
int arraySign(vector<int>& nums) {
    int sign = 1;
    for (int x : nums) {
        if (x == 0) return 0;
        if (x < 0) sign = -sign;
    }
    return sign;
}
Time: O(n) Space: O(1)