thiagowfx's avatar

Β¬ just serendipity πŸ€ (not just serendipity)

LeetCode #1295: Find Numbers with Even Number of Digits

β€’ 111 words β€’ 1 min β€’ updated

LeetCode #1295: Find Numbers with Even Number of Digits:

python
class Solution:
    def findNumbers(self, nums: List[int]) -> int:
        def is_even(n):
            return len(str(n)) & 1 == 0

        return sum((is_even(num) for num in nums))

With pure integers:

python
class Solution:
    def findNumbers(self, nums: List[int]) -> int:
        def is_even(n):
            ## return len(str(n)) & 1 == 0
            ans = True
            while n > 0:
                n //= 10
                ans = not ans
            return ans

        return sum((is_even(num) for num in nums))

Or 104 / 105 test cases passed (blame floating point approximation):

python
class Solution:
    def findNumbers(self, nums: List[int]) -> int:
        def is_even(n):
            return int(log(n) / log(10)) & 1 == 1

        return sum((is_even(num) for num in nums))