LeetCode in Kotlin

1299. Replace Elements with Greatest Element on Right Side

Easy

Given an array arr, replace every element in that array with the greatest element among the elements to its right, and replace the last element with -1.

After doing so, return the array.

Example 1:

Input: arr = [17,18,5,4,6,1]

Output: [18,6,6,6,1,-1]

Explanation:

Example 2:

Input: arr = [400]

Output: [-1]

Explanation: There are no elements to the right of index 0.

Constraints:

Solution

class Solution {
    fun replaceElements(arr: IntArray): IntArray {
        var max = -1
        for (i in arr.indices.reversed()) {
            val temp = arr[i]
            arr[i] = max
            max = Math.max(max, temp)
        }
        return arr
    }
}