균형 잡힌 세상

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

세계는 균형이 잘 잡혀 있어야 한다. 양과 음, 빛과 어둠, 그리고 왼쪽 괄호와 오른쪽 괄호처럼 말이다.

정민이의 임무는 문자열이 주어졌을 때 그 안의 괄호들이 균형을 이루고 있는지 판단하는 프로그램을 작성하는 것이다.

문자열에 나올 수 있는 괄호는 소괄호 ( ) 와 대괄호 [ ] 두 종류이며, 문자열이 균형을 이루는 조건은 다음과 같다.

  • 모든 왼쪽 소괄호 ( 는 오른쪽 소괄호 ) 와만 짝을 이룬다.
  • 모든 왼쪽 대괄호 [ 는 오른쪽 대괄호 ] 와만 짝을 이룬다.
  • 모든 오른쪽 괄호는 자신과 짝지을 수 있는 왼쪽 괄호가 앞쪽에 존재해야 한다.
  • 모든 괄호의 짝은 1:1로만 이루어진다. 즉, 괄호 하나가 둘 이상의 괄호와 짝지어질 수 없다.
  • 서로 짝을 이루는 두 괄호 사이에 있는 부분 문자열 또한 균형을 이루어야 한다.

정민이를 도와, 주어진 문자열이 균형 잡힌 문자열인지 아닌지를 판단하자.

입력

입력은 여러 줄로 이루어진다. 각 줄(문자열)은 마지막 글자를 제외하면 영문 알파벳, 공백, 소괄호 ( ), 대괄호 [ ] 로 이루어져 있고, 항상 온점 . 으로 끝나며, 길이는 100글자 이하이다.

입력의 마지막에는 온점 하나만 있는 줄 . 이 들어오며, 이 줄을 만나면 입력이 끝난다. 이 종료 줄은 처리하지 않는다.

출력

각 문자열마다 한 줄에, 균형을 이루고 있으면 yes 를, 아니면 no 를 출력한다.

힌트

괄호가 하나도 없는 문자열(예: 공백만으로 이루어진 문자열)도 균형 잡힌 문자열로 간주한다.