라이밍 슬랭

단어와 운율이 같은 어미 목록들이 주어질 때, 각 구의 마지막 단어가 그 단어와 같은 어미를 공유하는지 판정한다.

쉬움3문자열해시맵구현아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

라이밍 슬랭은 흔한 단어 하나를 두세 단어짜리 구절로 바꿔 부르는 말놀이다. 구절의 마지막 단어가 원래 단어와 운이 맞아야 한다. 예를 들면 이렇다.

  • stairs를 apples and pears로 바꾼다.
  • rotten을 bales of cotton으로 바꾼다.

영어는 철자와 발음이 제각각이라 모국어 화자가 아니면 두 단어의 운이 맞는지 가려내기 어렵다.

같은 소리로 끝나는 어미를 모아 둔 목록이 여러 개 주어진다. 어떤 목록에 있는 어미 하나가 첫 번째 단어의 접미사이고 같은 목록에 있는 어미 하나가 두 번째 단어의 접미사이면, 두 단어는 운이 맞는다. 두 어미가 서로 같을 필요는 없지만 반드시 같은 목록에 있어야 한다.

흔한 단어 하나와 어미 목록 여러 개, 그리고 구절 여러 개가 주어진다. 각 구절이 그 단어의 라이밍 슬랭이 될 수 있는지 판정하라.

입력

  • 첫째 줄에 흔한 단어 SS가 주어진다 (1S201 \le |S| \le 20).
  • 둘째 줄에 같은 소리로 끝나는 어미 목록의 개수 EE가 주어진다 (1E101 \le E \le 10).
  • 다음 EE개 줄에 목록이 한 줄에 하나씩 주어진다. 각 줄은 100자를 넘지 않고, 공백으로 구분된 어미가 나열된다.
  • 다음 줄에 판정할 구절의 개수 PP가 주어진다 (1P101 \le P \le 10).
  • 다음 PP개 줄에 구절 pip_i가 한 줄에 하나씩 주어진다. 각 줄은 100자를 넘지 않고, 구절은 공백 하나로 구분된 한 개에서 세 개의 단어로 이루어진다.

모든 글자는 소문자다. SS의 어미는 적어도 한 목록에 나온다.

출력

PP개 줄을 출력한다. ii번째 줄에는 구절 pip_i의 마지막 단어가 SS와 운이 맞으면 YES를, 맞지 않으면 NO를 출력한다.