Şablon P və mətn T Latın əlifbasının hərflərindən (böyük və ya kiçik hərflər) ibarətdir. Şablon həmçinin sual işarəsi ('?'), kvadrat mötərizələr və fiqurlu mötərizələr ehtiva edə bilər, aşağıda izah olunduğu kimi. Şablon P-nin mətn T-də bütün uyğunluqlarını tapın.
Şablon P-də hər bir mövqe aşağıdakılardan biri ola bilər:
Latın əlifbasının hərfi ('a' - 'z', 'A' - 'Z')
istənilən hərfi ifadə edən '?' simvolu
kvadrat mötərizələr [...], burada hərflər göstərilmiş mövqedə ola biləcək icazə verilən hərflərdir
fiqurlu mötərizələr {...}, burada hərflər göstərilmiş mövqedə ola bilməyəcək qadağan olunmuş hərflərdir
mötərizələrdəki hərflər təkrarlana bilər, məsələn [asssa] və ya {kLLf}
Məsələn, əgər şablon P A?[bcC]{De} şəklindədirsə, birinci hərf 'A', ikinci istənilən hərf, üçüncü b, c və ya C, dördüncü isə istənilən hərf, D və ya e istisna olmaqla ola bilər.
Birinci sətir testlərin sayı -i ehtiva edir. Hər bir test iki sətirdən ibarətdir. Birinci sətir şablon P-ni ehtiva edir, uzunluğu simvoldan və mövqedən artıq olmamalıdır. İkinci sətir ən çox 10^6 hərfdən ibarət mətn ehtiva edir.
Hər bir test üçün ayrı sətirdə şablonun başlaya biləcəyi bütün mətn mövqelərini artan sırada çıxarın (mətnin T birinci simvolu -ci mövqedə yerləşir). Əgər şablon P mətn T-də tapılmırsa, "no match" mesajını çıxarın. Çıxarılan mövqelər arasında yalnız bir boşluq olmalı və hər sətirin əvvəlində və ya sonunda artıq boşluq olmamalıdır.
Nümunə 1