이메일 감청

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

문제

어떤 정보기관이 사람 손으로는 다 읽을 수 없을 만큼 많은 이메일을 저장한다. 그래서 1차 선별은 프로그램이 맡는다. 여기서는 그 선별을 아주 단순하게 줄인 문제를 푼다.

이메일은 소문자로만 이루어진 단어와 쉼표, 마침표, 공백 문자(스페이스, 탭, 줄바꿈)로만 이루어져 있다고 하자. 단어는 소문자가 연속으로 이어진 최대 구간이다. 기관은 경보를 울리는 감시 단어 목록을 관리한다. 목록에 있는 서로 다른 단어가 정해진 개수 이상 이메일에 한 번씩이라도 나타나면 그 이메일은 경보를 울린다.

어떤 이메일이 경보를 울리는지 판정하는 프로그램을 작성하시오.

입력

첫째 줄에 데이터 세트의 개수 KK가 주어진다. 이어서 KK개의 데이터 세트가 다음 형식으로 주어진다.

각 데이터 세트의 첫째 줄에는 세 정수 nn, kk, tt가 공백으로 구분되어 주어진다. 1n1001 \le n \le 100은 경보를 울리는 감시 단어의 개수, 1k1001 \le k \le 100은 뒤따르는 이메일의 줄 수, 1t1001 \le t \le 100은 경보가 울리는 데 필요한 감시 단어의 개수이다.

다음 nn개의 줄에는 감시 단어가 한 줄에 하나씩 주어진다. 각 단어는 소문자로만 이루어지며 길이는 20 이하이다. 그다음 kk개의 줄에는 이메일 본문이 주어진다. 각 줄은 80자 이하이고 소문자, 쉼표, 마침표, 여러 형태의 공백 문자로 이루어진다. 단어가 줄 경계에서 끊기는 일은 없다. 줄바꿈은 단어를 끝내고, 다음 단어는 다음 줄에서 시작한다. 정확히 일치하는 단어만 세므로 contest와 contests는 서로 다른 단어이다.

출력

각 데이터 세트마다 먼저 Data Set x:를 한 줄에 출력한다. xx는 데이터 세트의 번호이며 1부터 시작한다. 다음 줄에는 이메일에서 찾은 서로 다른 감시 단어의 개수가 tt 이상이면 Alarm을, 그렇지 않으면 No Alarm을 출력한다. 각 데이터 세트 뒤에는 빈 줄을 하나 출력한다.