Вам дано рядок та список , що складається з слів. За одну операцію ви можете вибрати підрядок , якщо він присутній у списку як слово, і видалити його з . Залишки рядка , якщо такі є, з'єднуються разом.
Визначте мінімальну кількість операцій, необхідну для повного видалення рядка . Гарантується, що це можливо.
У першому рядку знаходиться слово . У другому рядку знаходиться ціле число — кількість слів у списку. Наступні рядків містять по одному слову зі списку . Усі слова складаються лише з малих латинських літер.
Виведіть одне ціле число — мінімальну кількість операцій, необхідну для повного видалення рядка .
Обмеження
1 \leq |S| \leq 100
1 \leq N \leq 100
1 \leq |M_i| \leq 100
Приклад 1