[프로그래머스] 레벨1 220420

📝정수 제곱근 판별

나의 풀이

function solution(n) {
    let num = Math.sqrt(n);
    if(num % 1 === 0) {
        return (num+1) * (num+1)
    } else {
        return -1
    }
}

제곱근을 반환하는 함수와 정수인지 판별하는 방법에 대해 알 수 있었다.

📝정수 내림차순으로 배치하기

나의 풀이

function solution(n) {
    let answer = +(n.toString().split("").sort((a,b) => b - a).join(""));
    return answer;
}

다른 사람의 풀이

function solution(n) {
    // 문자풀이
    // return parseInt((n+"").split("").sort().reverse().join(""));

    // 숫자풀이
    var r = 0, e = 0, arr = [];

    do {
        e = n%10;
        // 정렬
        if (arr.length == 0) arr.push(e);
        else for (var i=0, len=arr.length; i<len; i++) {
            if (arr[i] <= e) { arr.splice(i,0,e); break; }
            if (i == len-1) arr.push(e);
        }
    } while (n = Math.floor(n/10), n>0);

    return parseInt(arr.join(""));
}

좋은 웹페이지 즐겨찾기