LeetCode in Kotlin

3550. Smallest Index With Digit Sum Equal to Index

Easy

You are given an integer array nums.

Return the smallest index i such that the sum of the digits of nums[i] is equal to i.

If no such index exists, return -1.

Example 1:

Input: nums = [1,3,2]

Output: 2

Explanation:

Example 2:

Input: nums = [1,10,11]

Output: 1

Explanation:

Example 3:

Input: nums = [1,2,3]

Output: -1

Explanation:

Constraints:

Solution

class Solution {
    private fun sum(num: Int): Int {
        var num = num
        var s = 0
        while (num > 0) {
            s += num % 10
            num /= 10
        }
        return s
    }

    fun smallestIndex(nums: IntArray): Int {
        for (i in nums.indices) {
            if (i == sum(nums[i])) {
                return i
            }
        }
        return -1
    }
}