Laiko ribojimas: 1s

Atminties ribojimas: 64MB

Duomenų failas: lmio_1999_3e2_keisk_zodi_vyr.in

Rezultatų failas: lmio_1999_3e2_keisk_zodi_vyr.out

Jei norite pateikti savo sprendimą - prisijunkite.

Pakeisk žodį

Duoti du žodžiai. Iš pirmojo žodžio pagal nurodytas taisykles reikia gauti antrą žodį. Keičiama taikant šias operacijas: Perkelti - žymeklis pastumiamas per vieną simbolį į dešinę;

Pašalinti - pašalinamas simbolis, kurį rodo žymeklis; žymeklis rodo tolesnį simbolį;

Pakeisti (x) - simbolis, kurį rodo žymeklis, pakeičiamas simboliu x; žymeklis lieka toje pačioje vietoje;

Įterpti (x) - prieš žymeklio rodomą simbolį įterpiamas simbolis x; žymeklis lieka toje pačioje vietoje;

Numesti - pašalinamas visas žodžio galas, pradedant simboliu, kurį rodo žymeklis (įskaitant ir žymeklio rodomą simbolį); tai gali būti tik paskutinė operacija; žymeklis rodo žodžio pabaigos simbolį.

Pradžioje žymeklis visuomet stovi žodžio pradžioje, ties pirmuoju simboliu. Iš vieno žodžio gauti kitą galima daugeliu būdų. Pavyzdžiui, iš žodžio matai gauti žodį pamatė galime šitaip: Pavyzdys

Čia žodį pakeitėme pavartoję 8 operacijas. O gal galima tai padaryti dar greičiau?

Užduotis

Parašykite programą, kuri rastų greičiausią būdą, t. y. mažiausią skaičių operacijų, duotam žodžiui pakeisti kitu duotu žodžiu taikant nurodytas operacijas. Laikoma, kad po paskutiniojo žodžio simbolio eina žodžio pabaigos simbolis. Baigus, žymeklis turi rodyti žodžio pabaigos simbolį, o žymekliui atsistojus ties šiuo simboliu darbas baigiamas.

Pradiniai duomenys

Pradiniai duomenys įrašyti dviejose eilutėse. Pirmoje – pirmasis žodis, antroje – antrasis. Abu žodžiai sudaryti tik iš mažųjų raidžių ir kiekvieno ilgis neviršija 160 simbolių.

Rezultatai

Rezultatą – minimalų operacijų skaičių spausdinkite ekrane.

Pavyzdžiai

Pradiniai duomenys Rezultatai
mato pamatė
7