본문 바로가기

PS/백준

[BOJ] 백준 4949 균형잡힌 세상 (Swift)

728x90
반응형

문제

https://www.acmicpc.net/problem/4949

 

4949번: 균형잡힌 세상

각 문자열은 마지막 글자를 제외하고 영문 알파벳, 공백, 소괄호("( )"), 대괄호("[ ]")로 이루어져 있으며, 온점(".")으로 끝나고, 길이는 100글자보다 작거나 같다. 입력의 종료조건으로 맨 마지막에

www.acmicpc.net

풀이

Stack 자료구조를 사용해서 풀이할 수 있습니다.

먼저 문자열을 하나씩 살펴보면서 "[", "]", "(", ")" 가 아니라면, 살펴보지 않았습니다.

문자열이 괄호이고 Stack의 Top이 "[" 이고, 현재 문자열이 "]"라면 "[]"으로 짝이 맞게 되므로
Stack의 삭제연산을 해주었습니다.

마찬가지도 소괄호도 같은 역할을 해주었습니다.

둘다 아니라면 스택에 삽입시켜주었습니다.

Stack이 비어있다면 괄호들의 균형이 잘 맞춰져 있는 경우입니다.

소스코드

후기

Stack 자료구조를 떠올린다면 쉽게 풀 수 있는 문제였습니다.

https://www.acmicpc.net/problem/9012

 

9012번: 괄호

괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고

www.acmicpc.net

위 문제와 비슷한 문제였습니다. 단순히 괄호의 종류가 하나 더 생기고 문자열에 괄호가 아닌 문자열이 포함된 경우..?

728x90
반응형

'PS > 백준' 카테고리의 다른 글

[BOJ] 백준 18258 큐 2 (Swift)  (0) 2023.04.03
[BOJ] 백준 1874 스택 수열 (Swift)  (0) 2023.04.03
[BOJ] 백준 9012 괄호 (Swift)  (0) 2023.04.03
[BOJ] 백준 10773 제로 (Swift)  (0) 2023.04.03
[BOJ] 백준 10828 스택 (Swift)  (0) 2023.04.03