Leetcode

Sign of the Product of an Array

  • Time:O(n)
  • Space:O(1)

C++

class Solution {
 public:
  int arraySign(vector<int>& nums) {
    int sign = 1;

    for (const int num : nums) {
      if (num == 0)
        return 0;
      if (num < 0)
        sign = -sign;
    }

    return sign;
  }
};

JAVA

class Solution {
  public int arraySign(int[] nums) {
    int sign = 1;

    for (final int num : nums) {
      if (num == 0)
        return 0;
      if (num < 0)
        sign = -sign;
    }

    return sign;
  }
}

Python

class Solution:
  def arraySign(self, nums: List[int]) -> int:
    sign = 1

    for num in nums:
      if num == 0:
        return 0
      if num < 0:
        sign = -sign

    return sign