-
Notifications
You must be signed in to change notification settings - Fork 0
/
findEvenDigitNumbers.py
43 lines (35 loc) · 1.2 KB
/
findEvenDigitNumbers.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# Find Numbers with Even Number of Digits
# 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
# Hide Hint #1
# How to compute the number of digits of a number ?
# Hide Hint #2
# Divide the number by 10 again and again to get the number of digits.
class Solution:
def findNumbers(self, nums: List[int]) -> int:
counter = 0
for el in nums:
mods=[el/10,el/100,el/1000,el/10000,el/100000,el/1000000]
for mod in mods:
if mod < 1:
break
if mods.index(mod) % 2 != 0:
counter += 1
return counter