javascript/프로그래머스

[코딩테스트 연습] level1. 햄버거 만들기

sewonzzang123 2023. 4. 12.
반응형

https://school.programmers.co.kr/learn/courses/30/lessons/133502

 

프로그래머스

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

programmers.co.kr

 

function solution(ingredient) {
    var answer = 0;
    for(let i=0 ; i<ingredient.length; i++){
        if( ingredient.slice(i, i+4).join('') === '1231'){
            answer++;
            ingredient.splice(i, 4);
            i-=3;
        }
    }
    return answer;
}

 

1. for문을 돌면서

2. slice로 i번째부터 4개의 요소를 가져와 햄버거의 형태를 갖춘다면(1-2-3-1) 

3. count를 추가해주면서

4. splice는 배열에서 제외시키는 함수로 i번째부터 4개의 요소를 제거

5. i를 3빼며 다시 for문을 돌게 한다. 최대 1-2-3 에서 마지막 재료가 일치하지 않는 경우의 수가 있기 때문에 3을 빼고 다시 for문으로 조회하도록 했음.

 

stack을 사용해서 푸는 경우도 있었음.

반응형

댓글