728x90
▶ 문제
▶ 풀이방법
import java.util.*;
class Solution {
public int solution(int[][] board, int[] moves) {
int answer = 0;
Stack<Integer> stack = new Stack<>();
for(int i = 0; i < moves.length; i++){
int index = moves[i]-1;
for(int j = 0; j < board.length; j++){
int num = board[j][index];
if(num != 0) {
if(stack.size() > 0 && stack.peek() == num){//담으려는 값과 그전에 담은 값 같으면 삭제
stack.pop();
answer += 2;
}else{//그렇지 않으면 값 stack에 저장.
stack.push(num);
}
board[j][index] = 0; //조건문에 사용된 값은 0으로 초기화.
break;
}
}
}
return answer;
}
}
728x90
'Algorithm > PROGRAMMERS[Java]' 카테고리의 다른 글
Lv1. 숫자 문자열과 영단어[카카오] (0) | 2022.05.01 |
---|---|
Lv1. 키패드 누르기[카카오] (0) | 2022.05.01 |
Lv1. 음양 더하기 (0) | 2022.04.25 |
Lv1. 없는 숫자 더하기 (0) | 2022.04.24 |
Lv1. 내적 (0) | 2022.04.24 |