Problems
Поиск в словаре
Поиск в словаре
Задан набор \textbf{s_1}, \textbf{s_2}, ..., \textbf{s_n}, состоящий из \textbf{n} строк словаря. Дополнительно задан набор \textbf{q_1}, \textbf{q_2}, ..., \textbf{q_m}, состоящий из \textbf{m} строк запросов.
Для каждой строки \textbf{q_i} найдите, сколько строк из словаря имеют префикс \textbf{q_i}. Более формально, для каждого индекса \textbf{i}, найдите количество таких индексов \textbf{t}, что \textbf{q_i} является префиксом \textbf{s_t}.
\InputFile
Первая строка содержит два целых числа \textbf{n} и \textbf{m} (\textbf{1} ≤ \textbf{n}, \textbf{m} ≤ \textbf{10^5}). Каждая из \textbf{n} следующих строк содержит непустую строку \textbf{s_i}. Каждая из \textbf{m} следующих строк содержит непустую строку \textbf{q_i}. Обратите внимание, что строки в наборе могут повторяться.
\OutputFile
Выведите \textbf{m} целых чисел: \textbf{i}-тое число должно обозначать ответ для строки \textbf{q_i}.
Input example #1
3 3 aba a ba a b bb
Output example #1
2 1 0