10778. Перевірка входжень
Відправити розв'язок
Бали:
100
Time limit:
1.0s
Memory limit:
500M
Authors:
Problem type
Allowed languages
C++, Java, Pascal, Python
Дано рядок і шаблони, перевірте кожен шаблон, чи він присутній у рядку.
Обмеження
- \(1≤n≤10^5\)
- \(1≤k≤5⋅10^5\)
- загальна довжина візерунків не перевищує \(5 ⋅10^5\)
Формат вхідних даних
У першому рядку вхідних даних є рядок довжиною \(n\).
Наступний рядок містить ціле число \(k\): кількість шаблонів.
Нарешті, є \(k\) рядків, які описують шаблони. Рядок і шаблони складаються з символів 'a'–'z'.
Формат вихідних даних
Для кожного шаблону виведіть «YES», якщо він є в рядку, і «NO» в іншому випадку.
Приклад вхідних даних
aybabtu
3
bab
abc
ayba
Приклад вихідних даних
YES
NO
YES
Коментарі