3300. Minimum Element After Replacement With Digit Sum
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
Solution:
class Solution {
public int minElement(int[] nums) {
int result = Integer.MAX_VALUE;
for (int i = 0; i < nums.length; i++){
int cur = nums[i]; //999
int sum = 0; // 27
while(cur != 0){
sum = sum + cur % 10; //999 % 10 = 9 // 9 9
cur = cur /10; // 990/ 10 = 99 // 9 =0
}
nums[i] = sum;
result = Math.min(result, nums[i]);
}
return result;
}
}
// TC: O(n)
// SC: O(1)