comments | difficulty | edit_url | rating | source | tags | |
---|---|---|---|---|---|---|
true |
简单 |
1139 |
第 168 场周赛 Q1 |
|
给你一个整数数组 nums
,请你返回其中位数为 偶数 的数字的个数。
示例 1:
输入:nums = [12,345,2,6,7896] 输出:2 解释: 12 是 2 位数字(位数为偶数) 345 是 3 位数字(位数为奇数) 2 是 1 位数字(位数为奇数) 6 是 1 位数字 位数为奇数) 7896 是 4 位数字(位数为偶数) 因此只有 12 和 7896 是位数为偶数的数字
示例 2:
输入:nums = [555,901,482,1771] 输出:1 解释: 只有 1771 是位数为偶数的数字。
提示:
1 <= nums.length <= 500
1 <= nums[i] <= 10^5
枚举数组 nums
中的每个元素,将其转换为字符串,判断字符串长度是否为偶数,是则答案加一。
时间复杂度 nums
的长度以及数组 nums
中的最大元素。
class Solution:
def findNumbers(self, nums: List[int]) -> int:
return sum(len(str(v)) % 2 == 0 for v in nums)
class Solution {
public int findNumbers(int[] nums) {
int ans = 0;
for (int v : nums) {
if (String.valueOf(v).length() % 2 == 0) {
++ans;
}
}
return ans;
}
}
class Solution {
public:
int findNumbers(vector<int>& nums) {
int ans = 0;
for (int& v : nums) {
ans += to_string(v).size() % 2 == 0;
}
return ans;
}
};
func findNumbers(nums []int) (ans int) {
for _, v := range nums {
if len(strconv.Itoa(v))%2 == 0 {
ans++
}
}
return
}
/**
* @param {number[]} nums
* @return {number}
*/
var findNumbers = function (nums) {
let ans = 0;
for (const v of nums) {
ans += String(v).length % 2 == 0;
}
return ans;
};