K개의 단어와 N개의 글자가 주어질 때, 각 글자마다 그 글자로 시작하는 단어 중 지금까지 가장 적게 사용된 단어를 사전순 우선으로 골라 출력한다.
보통4정렬해시맵구현그리디면접 대비아직 제출이 없습니다시간 제한2초메모리 제한64 MB
문제 설명
예제3
문제
지그와 재그가 단어 놀이를 한다. 지그가 알파벳 소문자 한 글자를 말하면, 재그는 그 글자로 시작하는 단어를 하나 말한다. 재그가 말하는 단어는 미리 정해진 단어 목록에 있어야 하고, 그 글자로 시작하는 목록의 단어 중에서 지금까지 재그가 가장 적게 말한 단어여야 한다. 그런 단어가 여럿이면 사전순으로 가장 앞서는 단어를 말한다. 지그가 말하는 모든 글자에 대해 고를 수 있는 단어가 항상 존재한다.
서로 다른 단어 K개로 이루어진 목록과 지그가 말한 글자 N개가 주어진다. 재그가 말한 단어 N개를 차례대로 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 K (1≤K≤100000)와 N (1≤N≤100000)이 주어진다.
다음 K개 줄에는 단어가 한 줄에 하나씩 주어진다. 각 단어는 길이가 21 이하인 알파벳 소문자 문자열이다.
다음 N개 줄에는 지그가 말한 알파벳 소문자 한 글자가 한 줄에 하나씩 주어진다.
출력
N개 줄을 출력한다. i번째 줄에는 지그가 말한 i번째 글자에 재그가 답한 단어를 출력한다.