본문 바로가기
개발/알고리즘

Find Numbers with Even Number of Digits

by ny0011 2021. 1. 22.
반응형

숫자의 자리수가 짝수인 것들의 개수 구하기

Input: nums = [12,345,2,6,7896]

Output:

 

1. python이니까.. string으로 변환해서 길이를 측정함

class Solution:
    def findNumbers(self, nums: List[int]) -> int:
        ans=0
        for num in nums:
            if len(str(num)) % 2 == 0:
                ans+=1
        return ans
104 / 104 test cases passed.
Status: Accepted
Runtime: 52 ms
Memory Usage: 14.3 MB

 

2. sample 28 ms submission

string으로 변환하지 않아도 밑이 10인 log를 써서 정수부분만 보면 그게 길이-1 이다!

그래서 짝수 길이면 홀수, 홀수 길이면 짝수가 나오니까

2로 나눈 나머지가 1인게 짝수 길이인 게 되니까 그걸 더하는 듯

 

class Solution:
    def findNumbers(self, nums: List[int]) -> int:
        return sum([int(log10(num)) %2 for num in nums])

 

leetcode.com/explore/learn/card/fun-with-arrays/521/introduction/3237/

 

Explore - LeetCode

LeetCode Explore is the best place for everyone to start practicing and learning on LeetCode. No matter if you are a beginner or a master, there are always new topics waiting for you to explore.

leetcode.com

 

'개발 > 알고리즘' 카테고리의 다른 글

별 찍기  (0) 2021.01.28
Squares of a Sorted Array  (0) 2021.01.23
485. Max Consecutive Ones  (0) 2021.01.22
파이썬 알고리즘 꿀팁  (0) 2020.12.09
[leetcode] week1 - Move Zeroes  (0) 2020.04.13

댓글