[LeetCode] Find Numbers with Even Number of Digits
Question
Given an array nums of integers, return how many of them contain an even number of digits.
리스트가 주어질 때, 자리수가 짝수인 수의 개수를 구하는 문제였다.
Example
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.
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] <= 105
Solution
class Solution: def findNumbers(self, nums: List[int]) -> int: cnt=0 # 답 tmp=0 # 자리수 # 총 자리수가 짝수인 수가 몇 개인지 for x in nums: tmp=0 while x/10>=1: # 숫자가 한자리수 일때는 통과 x=x/10 tmp+=1 tmp+=1 # 마지막 자리수 카운트 if tmp%2==0: # 자리수가 짝수인 수 카운트 cnt+=1 return cnt
끄적
- x에는 10으로 나눈 나머지가 아닌 “몫”을 넣아야 한다!
💛 개인 공부 기록용 블로그입니다. 👻