EduBrick

L. Сколько раз каждое слово

3000 мс · 256 МБ · всё или ничего

Тот же вход, что в предыдущей задаче, но вывести надо не «да или нет», а сколько раз каждое слово встречается в тексте. Вхождения могут перекрываться.

Формат ввода

В первой строке - текст (не более 10610^6 строчных латинских букв).

Во второй - число MM (1≤M≤1051 \le M \le 10^5).

В следующих MM строках - слова длиной не более 30 строчных латинских букв. Слова различны, их суммарная длина не превосходит 10510^5.

Формат вывода

Для каждого слова выведите количество его вхождений в текст.

Примеры

ввод
aaaa
1
aa
вывод
3
ввод
trololo
3
abacabadabacaba
olo
trol
вывод
0
2
1
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.