class Solution {
public:
int minElement(vector<int>& nums) {
}
};
3300. 替换为数位和以后的最小元素
给你一个整数数组 nums
。
请你将 nums
中每一个元素都替换为它的各个数位之 和 。
请你返回替换所有元素以后 nums
中的 最小 元素。
示例 1:
输入:nums = [10,12,13,14]
输出:1
解释:
nums
替换后变为 [1, 3, 4, 5]
,最小元素为 1 。
示例 2:
输入:nums = [1,2,3,4]
输出:1
解释:
nums
替换后变为 [1, 2, 3, 4]
,最小元素为 1 。
示例 3:
输入:nums = [999,19,199]
输出:10
解释:
nums
替换后变为 [27, 10, 19]
,最小元素为 10 。
提示:
1 <= nums.length <= 100
1 <= nums[i] <= 104
相似题目
原站题解
golang 解法, 执行用时: 8 ms, 内存消耗: 2.7 MB, 提交时间: 2024-10-01 15:11:38
func minElement(nums []int) int { ans := math.MaxInt for _, x := range nums { s := 0 for x > 0 { s += x % 10 x /= 10 } ans = min(ans, s) } return ans }
java 解法, 执行用时: 1 ms, 内存消耗: 42 MB, 提交时间: 2024-10-01 15:11:18
class Solution { public int minElement(int[] nums) { int ans = Integer.MAX_VALUE; for (int x : nums) { int s = 0; while (x > 0) { s += x % 10; x /= 10; } ans = Math.min(ans, s); } return ans; } }
cpp 解法, 执行用时: 0 ms, 内存消耗: 26.6 MB, 提交时间: 2024-10-01 15:10:55
class Solution { public: int minElement(vector<int>& nums) { int ans = INT_MAX; for (int x : nums) { int s = 0; while (x) { s += x % 10; x /= 10; } ans = min(ans, s); } return ans; } };
python3 解法, 执行用时: 55 ms, 内存消耗: 16.3 MB, 提交时间: 2024-10-01 15:10:34
class Solution: def minElement(self, nums: List[int]) -> int: ans = inf for x in nums: s = 0 while x: s += x % 10 x //= 10 ans = min(ans, s) return ans