Feladat: S.69 Korcsoport: - Nehézségi fok: -
Füzet: 2012/február, 104. oldal  PDF  |  MathML 

A szöveg csak Firefox böngészőben jelenik meg helyesen. Használja a fenti PDF file-ra mutató link-et a letöltésre.

Egy N hosszúságú szövegben szeretnénk összesen K darab, egyenként M hosszúságú minta előfordulását megtalálni, azonban a minták betűi sajnálatos módon összekeveredtek. Feladatunk tehát az így összekeveredett minták egy-egy permutációját megtalálni a szövegben.
A program a feladat leírását a standard bemenetről olvassa. Ennek első sorában egy-egy szóközzel elválasztva három egész szám található, sorra N, M és K értéke (1N1000000, 1M1000, 1K10000). A második sorban az N hosszúságú szöveg szerepel, az ezt követő K darab sor pedig rendre az összesen K darab M hosszúságú mintát tartalmazza. Minden szöveg kizárólag az angol ábécé 26 kisbetűjéből áll.
A standard kimenetre írt megoldás összesen K sorból álljon, az i-edik sorba az a legkisebb pozíció kerüljön, amelytől kezdődően a N hosszúságú szövegben az i-edik minta egy tetszőleges permutációja megjelenik, vagy a 0 szám, ha nincs ilyen pozíció.

 
Példa bemenetPélda kimenet   16 5 4   8aabbccddeeeedcba   1eeeed   12abcab   0abcde   aabcc
 

Beküldendő egy tömörített s69.zip állományban a program forráskódja (s69.pas, s689.cpp, ...) az .exe és más fordító által generált állományok nélkül, valamint a program rövid dokumentációja (s69.txt, s69.pdf, ...), amely tartalmazza a megoldás rövid leírását, és megadja, hogy a forrás melyik fejlesztő környezetben fordítható.