Skip to content

Latest commit

 

History

History
55 lines (44 loc) · 1.01 KB

1295_find-numbers-with-even-number-of-digits.md

File metadata and controls

55 lines (44 loc) · 1.01 KB

Problem

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

Solution

Using For-Loop

/**
 * @param {number[]} nums
 * @return {number}
 */
var findNumbers = function(nums) {
    let count = 0;
    for(num of nums){
        let numStr = num.toString();
        if(numStr.length % 2 == 0){
            count++;
        }
    }
    return count;
};
  • Time Complexity: O(n)
  • Space Complexity: O(1)