자바스크립트

[JavaScript] 프로그래머스 가까운 1 찾기

코딩하는둥이 2024. 6. 4. 10:05
 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

문제 설명

정수 배열 arr가 주어집니다. 이때 arr의 원소는 1 또는 0입니다. 정수 idx가 주어졌을 때, idx보다 크면서 배열의 값이 1인 가장 작은 인덱스를 찾아서 반환하는 solution 함수를 완성해 주세요.

단, 만약 그러한 인덱스가 없다면 -1을 반환합니다.

 

입출력 예

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

코드

const solution = (arr, idx) => {
   return arr.indexOf(1, idx)
}
 

 

설명

1)  indexOf 메서드를 사용하여 arr 배열에서 idx 위치부터 1을 찾습니다.
2) 찾으면 1의 위치의 인덱스를 반환하고 없으면 -1를 반환합니다.
 

 

공부

indexOf 

 : 배열에서 특정 요소를 찾고, 그 요소의 첫 번째 인덱스를 반환하거나 요소가 배열에 없으면 -1를 반환합니다.

let array = [0, 1, 2, 1, 2, 3];
let index1 = array.indexOf(1); // 1
// 인덱스 2부터 찾기 시작
let index2 = array.indexOf(1, 2); // 3
// 4는 배열에 없음
let index3 = array.indexOf(4); // -1 

console.log(index1); // 1
console.log(index2); // 3
console.log(index3); // -1​