LeetCode in Kotlin

3876. Construct Uniform Parity Array II

Medium

You are given an array nums1 of n distinct integers.

You want to construct another array nums2 of length n such that the elements in nums2 are either all odd or all even.

For each index i, you must choose exactly one of the following (in any order):

Return true if it is possible to construct such an array, otherwise return false.

Example 1:

Input: nums1 = [1,4,7]

Output: true

Explanation:

Example 2:

Input: nums1 = [2,3]

Output: false

Explanation:

It is not possible to construct nums2 such that all elements have the same parity. Thus, the answer is false.

Example 3:

Input: nums1 = [4,6]

Output: true

Explanation:

Constraints:

Solution

import kotlin.math.min

class Solution {
    fun uniformArray(nums1: IntArray): Boolean {
        var min = Int.MAX_VALUE
        for (x in nums1) {
            min = min(min, x)
        }
        if (min % 2 == 1) {
            return true
        }
        for (x in nums1) {
            if (x % 2 == 1) {
                return false
            }
        }
        return true
    }
}