002 Find Numbers with Even Number of Digits
Given an array nums
of integers, return how many of them contain an even number of digits.
nums
of integers, return how many of them contain an even number of digits.Example 1:
Input: nums = [12,345,2,6,7896]
Output: 2
Explanation:
12 contains 2 digits (even number of digits).
345 contains 3 digits (odd number of digits).
2 contains 1 digit (odd number of digits).
6 contains 1 digit (odd number of digits).
7896 contains 4 digits (even number of digits).
Therefore only 12 and 7896 contain an even number of digits.
Example 2:
Input: nums = [555,901,482,1771]
Output: 1
Explanation:
Only 1771 contains an even number of digits.
Constraints:
1 <= nums.length <= 500
1 <= nums[i] <= 10^5
Solution
Code
public class Solution {
public int FindNumbers(int[] nums) {
int result = 0; //number for return
int digits = 0; //number for counting
int temp =0;
for(int i=0; i<nums.Length; i++){
temp= nums[i];
//Get the digits of nums[i]
for(int j =0; j<6; j++){
if (temp > 0){
temp = temp/10;
++digits; //Get the number of digits
}
}
//Judge whether it is even
if (digits % 2 == 0){
result++;
}
digits=0; // reset digits;
}
return result;
}
}
Last updated
Was this helpful?