CodingSpace

프로그래머스#54(Lv.1)_크레인 인형뽑기 게임 본문

프로그래머스/Level1

프로그래머스#54(Lv.1)_크레인 인형뽑기 게임

개발자_조이킴 2021. 11. 9. 13:52

크레인 인형뽑기 게임 - 2019 카카오 개발자 겨울 인턴십

다른 분들이 하신것 보고 배우고 또 배우자! (reduce메소드, map 메소드!)

 

포기하지말고 계속해서 공부하자!

화이팅:)

 

입출력 예시


// 프로그래머스 - 크레인 인형뽑기 게임

function solution(board, moves) {
    
    // 터진 인형의 개수를 세어줄 변수 cnt 선언
    let cnt = 0

    // 인형을 담을 바구니
    let basket = []

    while(moves.length > 0) {

    // moves 맨 앞요소부터 하나씩 제거해준다
    let head = moves.shift()
    
    for(let i = 0; i < board.length; i++) {
        // 만약 head-1 열 중에 0이 아닌 숫자가 존재하는 경우
        if(board[i][head-1] !== 0) {
            // 바구니에 그 숫자를 담은 후 해당 요소에 0을 할당한다.
            // for문을 끝낸다
            basket.push(board[i][head-1])
            board[i][head-1] = 0
            break;
        }
     }
    
    // 만약 바구니에 담겨있는 숫자의 개수가 2개 이상일 경우
    if(basket.length >= 2) {
        let len = basket.length
        // 만약 바구니 맨 끝에 있는 숫자와 맨 끝 옆에 있는 수자가 같다면
        // 두 숫자는 터지고 (바구니에서 제거하고), 터진 인형수를 세어준다 (cnt += 2)
        if(basket[len-1] === basket[len-2]) {
            basket.pop()
            basket.pop()
            cnt = cnt + 2
        }
     }

    }

    return cnt
}

 

<다른분의 solution>




 

 

좋아요공감

공유하기

통계

글 요소

 

 

Comments