아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

자동차 게임

면접 대비

시간 제한2초메모리 제한256 MB

요약
세 글자 번호판을 순서대로 부분 수열로 포함하는 사전의 첫 단어를 찾습니다.
난이도

보통10점 중 5점

유형
문자열 매칭, 배열
정답자
아직 제출이 없습니다

문제

차를 타고 오래 이동하면 지루해진다. 지루함을 달래는 방법 하나는 단어 게임이다. 한 사람이 마주 오는 차의 번호판에 적힌 알파벳 세 글자를 소리 내어 읽으면 한 라운드가 시작된다. 그 세 글자를 같은 순서로 포함하는 단어를 가장 먼저 말한 사람이 그 라운드를 이기고, 차가 멈출 때까지 가장 많은 라운드를 이긴 사람이 게임에서 이긴다. 세 글자가 단어 안에서 붙어 있을 필요는 없고 순서만 맞으면 된다.

지난 여행에서는 이 게임에서 크게 졌다. 이번에는 미리 준비한다. 알파벳 세 글자가 주어질 때마다 그 세 글자를 같은 순서로 포함하는 사전의 첫 단어를 찾아라.

입력

첫째 줄에 사전에 있는 단어의 수 NN과 처리할 번호판의 수 MM이 주어진다. (1≤N≤50001 \le N \le 5000, 1≤M≤100001 \le M \le 10000)

다음 NN개 줄에 사전의 단어가 한 줄에 하나씩 주어진다. 각 단어는 영어 소문자로만 이루어지고 길이는 100 이하이다. 앞선 줄에 나온 단어가 사전에서 더 앞에 있다.

다음 MM개 줄에 번호판이 한 줄에 하나씩 주어진다. 각 번호판은 영어 대문자 세 글자다.

출력

번호판마다 한 줄씩 출력한다. 대문자와 소문자를 구분하지 않고 번호판의 세 글자를 같은 순서로 포함하는 사전의 첫 단어를 출력한다. 그런 단어가 없으면 No valid word를 출력한다.

예제2

  1. 예제 1

    입력
    5 3
    banana
    car
    sand
    uncharacteristically
    counterrevolutionaries
    RRR
    DNA
    SND
    
    예상 출력
    counterrevolutionaries
    No valid word
    sand
    
  2. 예제 2

    입력
    3 4
    abc
    cba
    aabbcc
    ABC
    CBA
    ACB
    BCA
    
    예상 출력
    abc
    cba
    No valid word
    No valid word