LeetCode in Kotlin

2529. Maximum Count of Positive Integer and Negative Integer

Easy

Given an array nums sorted in non-decreasing order, return the maximum between the number of positive integers and the number of negative integers.

Note that 0 is neither positive nor negative.

Example 1:

Input: nums = [-2,-1,-1,1,2,3]

Output: 3

Explanation: There are 3 positive integers and 3 negative integers. The maximum count among them is 3.

Example 2:

Input: nums = [-3,-2,-1,0,0,1,2]

Output: 3

Explanation: There are 2 positive integers and 3 negative integers. The maximum count among them is 3.

Example 3:

Input: nums = [5,20,66,1314]

Output: 4

Explanation: There are 4 positive integers and 0 negative integers. The maximum count among them is 4.

Constraints:

Follow up: Can you solve the problem in O(log(n)) time complexity?

Solution

class Solution {
    fun maximumCount(nums: IntArray): Int {
        var plus = 0
        var minus = 0
        for (num in nums) {
            if (num > 0) {
                plus++
            }
            if (num < 0) {
                minus++
            }
        }
        return Math.max(plus, minus)
    }
}