Find Numbers with Even Number of Digits

권재현·2021년 9월 3일
0

leetcode

목록 보기
3/13
post-thumbnail

문제

짝수 자리수를 카운트 하는 문제다.

대표적인 풀이는 2가지 방법이다.
1. 스트링으로 변환해서 length를 이용해 구하는 방법

/**
* @param {number[]} nums
* @return {number}
*/
var findNumbers = function(nums) {
   let cnt = 0;
   for(let num of nums){
       if(String(num).length % 2 === 0){
           cnt++;
       }
   }
   return cnt;
};
  1. 10으로 나눈 횟수를 카운트해서 구하는 방법
/**
 * @param {number[]} nums
 * @return {number}
 */
var findNumbers = function(nums) {
    let cnt = 0;
    for(let num of nums){
        let tenCnt = 0;
        //0이 나올 때 까지 나누고 나눈 횟수 카운트![](https://velog.velcdn.com/images%2Fwogus216%2Fpost%2F64d83885-f946-4e2d-8c68-d4b86b0d61ab%2Fleetcode.png)
        while(num > 0){
            tenCnt++;
            num = Math.floor((num/10));
        }
    if(tenCnt % 2 ===0){
        cnt++;
     }
    }
    return cnt;
};
profile
호텔리어 출신 비전공자

0개의 댓글