본문 바로가기

Coding Test/Programmers

[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 54 - 숫자찾기)

728x90

 

# 문제

정수 num과 k가 매개변수로 주어질 때, num을 이루는 숫자 중에 k가 있으면 num의 그 숫자가 있는 자리 수를 return하고 없으면 -1을 return 하도록 solution 함수를 완성해보세요.



# 답안

// 1. 입력: num -> 정수 1,2,3 같은거, k -> 0~9 
// 2. 출력: num을 이루는 숫자 중에 k가 있으면 num의 그 숫자가 있는 자리 수
// 문자열 만들고, split으로 배열로 쪼개고, 
// 만약에 배열에 k가 있으면, k를 포함하는 인덱스를 반환하고 없으면 -1 반환 


function solution(num, k) {
    let arr = num.toString().split('').map(str=>parseInt(str));
    if (arr.indexOf(k) !== -1){
        return arr.indexOf(k)+1;
    }else{
        return -1;
    }
}


// 위 코드의 축약 버전
function solution(num, k) {
    return num.toString().split("").map((el) => Number(el)).indexOf(k) + 1 || -1
728x90