프로그래머스 크레인 인형뽑기 게임 자바

BioBeBE·2022년 8월 2일
0

프로그래머스

목록 보기
35/40

문제풀이

  1. moves배열을 x 좌표로, y좌표는 board.length-1로 맨위부터 탐색
  2. y좌표가 board.length보다 작을때 까지 탐색하며 0이 아니면 Stack.peek과 비교하고 같으면 answer 증가 및 Stack.pop 같지않으면 해당값 Stack.push

코드

import java.util.*;
class Solution {
    public int solution(int[][] board, int[] moves) {
        int answer = 0;
        Stack<Integer> S = new Stack<>();
        S.push(0);
        for(int k=0;k<moves.length;k++){
            int x=0;
            int y=moves[k]-1;
            int tmp=0;
            while(x<board.length){
                if(board[x][y]!=0){
                    tmp=board[x][y];
                    board[x][y]=0;
                    break;
                }else {
                    x++;
                }
            }
                if(tmp!=0){
                   if(S.peek()==tmp){
                        answer+=2;
                        S.pop();
                    }
                    else S.push(tmp);
                }
        }
        return answer;
    }
}```
profile
개발자지망생

0개의 댓글