반응형
올바른 괄호 : 스택/큐 Lv2
https://school.programmers.co.kr/learn/courses/30/lessons/12909
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
import java.util.LinkedList;
import java.util.Queue;
class Solution {
boolean solution(String s) {
boolean answer = true;
char[] str = s.toCharArray();
int leftSize = 0;
int rightSize = 0;
Queue<Character> block = new LinkedList<>();
for(int i=0;i<str.length;i++) {
if(str[0] == ')') {
answer = false;
return answer;
}
block.add(str[i]);
}
int idx = 0;
int blockSize = block.size();
while(idx < blockSize) {
char cBlock = block.poll();
if(cBlock == '(') leftSize++;
else if(cBlock == ')') rightSize++;
if(rightSize > leftSize) {
answer = false;
}
idx++;
}
if(leftSize != rightSize) answer = false;
return answer;
}
}
반응형