На следующий день после дискотеки Гриша решил устроить детям «взрыв мозга». Он взял много карточек и написал на каждой из них одну латинскую букву в нижнем регистре. А после этого придумал свою строку и задал детям задание: составить как можно больше подстрок своей строки, используя карточки. Гришина строка состоит только из букв латинского алфавита в нижнем регистре. Вам нужно определить сколько её подстрок можно составить, используя только данные карточки.
Запишем буквы, написанные на карточках, подряд друг за другом. Тогда если Гришина строка — это «aaab», а карточки — это «aba», то можно составить три подстроки «a», подстроку «b», две подстроки «aa» и подстроки «ab» и «aab». А подстроки «aaa» и «aaab» нельзя, так как есть всего две карточки с буквой «a».
Первая строка входных данных содержит два целых числа $$$n$$$ и $$$m$$$ ($$$1 \le n, m \le 10^5$$$) — длину строки Гриши и длину строки карточек.
Вторая строка входных данных содержит Гришину строку $$$s$$$ длины $$$n$$$, состоящую только из букв латинского алфавита в нижнем регистре.
Третья строка входных данных содержит строку карточек $$$t$$$ длины $$$m$$$, состоящую только из букв латинского алфавита в нижнем регистре.
Выведите одно целое число — количество подстрок в $$$s$$$, которые можно составить из символов строки $$$t$$$.
4 3 aaab aba
8
7 3 abacaba abc
15
| Название |
|---|


