LeetCode in Kotlin

2553. Separate the Digits in an Array

Easy

Given an array of positive integers nums, return an array answer that consists of the digits of each integer in nums after separating them in the same order they appear in nums.

To separate the digits of an integer is to get all the digits it has in the same order.

Example 1:

Input: nums = [13,25,83,77]

Output: [1,3,2,5,8,3,7,7]

Explanation:

answer = [1,3,2,5,8,3,7,7]. Note that answer contains the separations in the same order.

Example 2:

Input: nums = [7,1,3,9]

Output: [7,1,3,9]

Explanation:

The separation of each integer in nums is itself. answer = [7,1,3,9].

Constraints:

Solution

class Solution {
    fun separateDigits(nums: IntArray): IntArray {
        val arr = ArrayList<Int>()
        for (i in nums.indices.reversed()) {
            while (nums[i] > 0) {
                val r = nums[i] % 10
                arr.add(r)
                nums[i] = nums[i] / 10
            }
        }
        val num = IntArray(arr.size)
        var i = arr.size - 1
        for (I in arr) {
            num[i--] = I
        }
        return num
    }
}