프로그래머스 - 짝지어 제거하기

JJJ·2023년 5월 25일
0


풀이

import java.util.*;
class Solution {
	public int solution(String s) {
		Stack<Character> stack = new Stack<>();
		
		for (int i=0; i<s.length(); i++) {
			char ch=s.charAt(i);
			
			if(!stack.isEmpty() && stack.peek()==ch){
                stack.pop();
            }else stack.push(ch);
		}

		return stack.isEmpty()?1:0;
	}
}

풀이방법
1) Stack을 활용하여 peek(가장 최근에 추가된 값)과 s의 i번째 인덱스가 같다면 pop하여 제거
2) 그렇지 않다면 push하여 남은 글자만 기록

profile
Think Talk Act

0개의 댓글