본문 바로가기

프로그래머스

[알고리즘] 가까운 1 찾기 / indexOf

가까운 1 찾기

idx 보다 인덱스 값이 큰 수 중 가까운 1의 인덱스 값을 리턴, 값이 없을 경우에는 -1 리턴

 

arr idx result
[0, 0, 0, 1] 1 3
[1, 0, 0, 1, 0, 0] 4 -1
[1, 1, 1, 1, 0] 3 3

 

나의 풀이:

function solution(arr, idx) {
    for(i = idx; i < arr.length; i++) {
        if(arr[i] == 1) {
            return i
        }
    } return -1;
}

인덱스 값이 idx 부터 시작하고, 그중 제일 빠른 1의 인덱스값을 리턴. 

 

다른 풀이:

const solution = (arr,idx) => arr.indexOf(1,idx);

indexOf 메소드를 이용하여 1의 값을 찾되, idx 부터 시작하는 값을 리턴