Reduction
Дуже проста
Обмеження на час виконання 1 секунда
Обмеження на використання пам'яті 256 мегабайтів
Задано рядок S та список M, який складається з N слів, кожне з яких довжини L. За одну операцію можна вибрати деякий підрядок рядка S, якщо такий зустрічається у якості слова у списку M, і вирізати з рядка S. Після чого частини рядка S, що залишились, якщо такі є, склеюються.
Визначте, за яку мінімальну кількість операцій можна знищити весь рядок S. Гарантується, що це можна зробити.
Вхідні дані
У першому рядку слово S. У другому рядку ціле число N — кількість слів у списку. Далі N рядків, у кожному з яких по одному слову зі списку M. Усі слова складаються лише з рядкових латинських літер.
Вихідні дані
Одне число — мінімальна кількість операцій, необхідних для знищення рядка S.
Обмеження
1 ≤ |S| ≤ 100
1 ≤ N ≤ 100
1 ≤ |M_i| ≤ 100
1 ≤ L ≤ |S|
Приклади
Вхідні дані #1
Відповідь #1
Відправки 26
Коефіцієнт прийняття 65%