Skip to content

Find Numbers with Even Number of Digits using Java

The challenge

Given an array 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

The solution

class Solution { public int findNumbers(int[] nums) { // keep track of the amount to return int evens = ; // loop through all the nums for (int i=; i<nums.length; i++) { int digits = , num = nums[i]; // while we divide by 10 while (num!=) { num /= 10; // increment our count ++digits; } // increment if even if (digits%2==) evens++; } return evens; } }
Code language: Java (java)

See also  Calculating Simple Max Digit Sum in Java
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x