모자 퍼즐

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

문제

NN명의 UCPC 출제자가 풀이 및 스코어보드 공개 방송을 위해 한 장소에 모였다. 출제진은 방송을 시작하기 전에 심심풀이로 머리를 굴리는 게임을 진행하기로 했다.

  • 게임의 진행자는 흰색과 검은색 모자를 여러 개 갖고 있다.
  • 각 출제자는 미리 배치된 의자에 앉는다. 모든 출제자는 누가 누구의 모자를 볼 수 있는지 전부 알고 있으며, 자신의 모자는 볼 수 없다.
  • 각 출제자가 눈을 감으면 게임의 진행자가 각 출제자에게 두 색의 모자 중 하나를 씌운다. 그 후 진행자는 "흰색 모자는 w_1w\_1개 이상 w_2w\_2개 이하로 씌웠습니다."라고 말한다.
  • 이후 진행자가 여러 번의 질문을 던진다. 질문을 할 때에는 몇 명의 출제자에게 동시에 "당신이 쓴 모자의 색을 알고 있나요?"라고 물어보고, 지목받은 출제자는 모두 동시에 대답해야 한다. 모든 출제자는 누가 뭐라고 대답했는지 알 수 있다.

각 출제자가 무슨 모자를 썼는지를 전부 알 수 있는 관전자의 시점에서 이 게임을 풀어보자. 모든 출제자가 완벽히 논리적으로 사고하며 근거 없는 추측을 하지 않는다고 가정할 때, 각 출제자가 뭐라고 대답할지를 알아내야 한다.

입력

첫째 줄에 NN이 주어진다. (1N201 \leq N \leq 20)

그다음 줄부터 한 줄에 0 또는 1이 NN개씩 총 NN줄이 주어진다. 그중 ii번째 줄의 jj번째 수는 ii번째 출제자가 jj번째 출제자의 모자를 볼 수 있으면 1, 없으면 0이다. 어떤 출제자도 자신의 모자를 볼 수 없다.

그다음 줄에는 진행자가 알려준 흰색 모자의 최소 개수 w_1w\_1과 최대 개수 w_2w\_2가 주어진다. (0w_1w_2N0 \leq w\_1 \leq w\_2 \leq N)

그다음 줄에는 W와 B로 이루어진 길이 NN의 문자열이 주어진다. 그중 ii번째 문자는 ii번째 출제자가 흰색 모자를 썼으면 W, 아니면 B이다. W는 w_1w\_1개 이상 w_2w\_2개 이하 존재한다.

그다음 줄에는 질문의 개수 QQ가 주어진다. (1Q301 \leq Q \leq 30)

그다음 줄부터 QQ개의 줄이 주어진다. 각 줄에는 먼저 질문을 받는 사람의 수 kk가 주어지고, 그 다음에 xx번째 출제자가 질문을 받음을 의미하는 정수 xx가 총 kk개 주어진다. 이 kk명은 질문을 동시에 받는다. 각 줄에서 xx는 중복되어 주어지지 않는다.

출력

각 질문에 대해 출제자의 대답으로 "예"를 의미하는 Y, 또는 "아니요"를 의미하는 N을 총 kk개 이어 붙여 한 줄씩 출력한다.