Logo
(追記) (追記ここまで)

34994번 - 괄호 조작하기 스페셜 저지

시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 1024 MB70525183.607%

문제

토카 왕국에는 괄호 문자열들이 사는 도시가 있다. 토카 왕국은 올바른 괄호 문자열만을 시민으로 인정하기에 매년 괄호 문자열이 올바른 괄호 문자열인지 검사한다. 검사 결과 올바른 괄호 문자열이 아니라면 토카 왕국에서 쫓겨나게 된다.

다음과 같은 규칙을 만족하는 문자열을 올바른 괄호 문자열이라고 한다.

  • (), [], {}은 모두 올바른 괄호 문자열이다.
  • 만약 $X,ドル $Y$가 모두 올바른 괄호 문자열이라면 $XY$도 올바른 괄호 문자열이다.
  • 만약 $X$가 올바른 괄호 문자열이라면 ($X$), [$X$], {$X$}도 올바른 괄호 문자열이다.

괄호 문자열들은 토카 왕국에서 쫓겨나지 않기 위해 자신을 구성하는 괄호 중 최대 하나를 (, ), [, ], {, } 중 원하는 것으로 조작할 수 있다. 괄호 문자열들이 토카 왕국에서 쫓겨나지 않도록 도와주자!

입력

첫 번째 줄에 괄호 문자열의 수 $N$ $(1 \leq N \leq 1,000円)$이 주어진다.

이후 $N$줄에 걸쳐 (, ), [, ], {, }으로 이루어진 괄호 문자열 $S$ $(1 \leq |S| \leq 100)$가 한 줄에 하나씩 주어진다.

출력

각 괄호 문자열에 대해 괄호 문자열을 조작해 올바른 괄호 문자열이 될 수 없다면 첫 번째 줄에 NO를 출력한다.

올바른 괄호 문자열이 될 수 있다면 첫 번째 줄에 YES $x$ $(0 \leq x \leq 1)$를 공백으로 구분하여 출력한다. $x$는 조작할 횟수이다.

이후 $x$개 줄에 걸쳐 조작할 문자의 위치 $j$ $(1 \leq j \leq |S|)$와 변경할 문자를 공백으로 구분하여 출력한다. 답이 여러 가지라면 그 중 아무거나 하나를 출력한다.

제한

예제 입력 1

8
(]
{(})
[{}())
{{[[}}
[[()[]
(
[{}()]
[{}()]

예제 출력 1

YES 1
1 [
NO
YES 1
1 (
YES 1
4 ]
YES 1
2 ]
NO
YES 0
YES 1
1 [

노트

출처

Contest > BOJ User Contest > 카툰컵 > Cartoon Cup: ONE D번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /