Skip to content

3300. Minimum Element After Replacement With Digit Sum

Description

You are given an integer array nums.

You replace each element in nums with the sum of its digits.

Return the minimum element in nums after all replacements.

 

Example 1:

Input: nums = [10,12,13,14]

Output: 1

Explanation:

nums becomes [1, 3, 4, 5] after all replacements, with minimum element 1.

Example 2:

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

Output: 1

Explanation:

nums becomes [1, 2, 3, 4] after all replacements, with minimum element 1.

Example 3:

Input: nums = [999,19,199]

Output: 10

Explanation:

nums becomes [27, 10, 19] after all replacements, with minimum element 10.

 

Constraints:

  • 1 <= nums.length <= 100
  • 1 <= nums[i] <= 104

 

Solutions

Solution: Simulation

  • Time complexity: O(n)
  • Space complexity: O(1)

 

JavaScript

js
/**
 * @param {number[]} nums
 * @return {number}
 */
const minElement = function (nums) {
  let result = Number.MAX_SAFE_INTEGER;

  const getSumDigits = num => {
    let sum = 0;

    while (num) {
      sum += num % 10;
      num = Math.floor(num / 10);
    }

    return sum;
  };

  for (const num of nums) {
    const sum = getSumDigits(num);

    result = Math.min(sum, result);
  }

  return result;
};

Released under the MIT license