Fişierul intrare/ieşire:palind.in, palind.outSursăHappy Coding 2
AutorMugurel Ionut AndreicaAdăugată de
Timp execuţie pe test1.05 secLimită de memorie65536 kbytes
Scorul tăuN/ADificultatenormalnormalnormalnormalnormal

Vezi solutiile trimise | Statistici

Palindroame

Un palindrom este un sir de caractere care este egal cu inversul sau. De exemplu "aerisirea" este un palindrom. Dandu-se un sir de caractere vi se cere sa spuneti numarul minim de inversiuni ce trebuie efectuate pentru a-l transforma in palindrom. O inversiune reprezinta schimbarea intre ele a doua caractere adiacente. Pentru a transforma in palindrom "aeriseair" sunt necesare 4 inversiuni:

  • schimbam "ai" : "aeriseiar"
  • schimbam "ei" : "aerisiear"
  • schimbam "ar" : "aerisiera"
  • schimbam "er" : "aerisirea"

Date de Intrare (fisierul: palind.in)

Fisierul de intrare va contine mai multe teste. Pe prima linie se va afla numarul T de teste.
Pe fiecare din urmatoarele T teste se va afla un sir de caractere (litere mici ale alfabetului latin). Fiecare linie se termina cu enter.

Date de Iesire (fisierul palind.out)

Fisierul de iesire va contine T linii. Pe linia i se va afla numarul minim pentru a obtine palindrom din sirul de caractere aflat pe linia i+1 in fisierul de intrare sau -1 in cazul in care nu se poate obtine palindrom.

Restrictii

  • Numarul de caractere dintr-un sir nu va depasi 105
  • T ≤ 105

Exemplu

palind.inpalind.out
4
aeriseair
mamad
asd
aabb
4
3
-1
2
Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?

remote content