Maria, elevă în clasa a V-a, a primit la ora de română o temă. Tema are două cuvinte şi trei cerinţe. Prima cerinţă este de a determina frecvenţa cea mai mare de apariţie a unei litere din ambele cuvinte, fără a se face diferenţă între literele mici şi mari. A doua cerinţă este de a stabili dacă primul cuvânt este anagrama celui de-al doilea, fără a se face diferenţă între literele mici şi mari. A treia cerinţă este de a stabili dacă unul dintre cele două cuvinte este prefix pentru celălalt, făcându-se diferenţă între litere mici şi mari. Deoarece cuvintele erau prea lungi, Maria a cerut ajutorul fratelui său, elev în clasa a VII-a, să-i scrie un program care să o ajute la găsirea soluţiei mai uşor.
Cerinţă
Scrieţi un program care să rezolve cele trei cerinţe.
Date de intrare
Fişierul de intrare cuvinte.in
conţine pe prima linie primul cuvânt, iar pe a doua linie al doilea cuvânt. Ambele cuvinte se termină cu caracterul sfârşit de linie.
Date de ieşire
Fişierul de ieşire cuvinte.out
va conţine trei linii. Pe prima linie va fi scris un număr natural ce reprezintă frecvenţa maximă a unei litere în cele două cuvinte. Pe a doua linie va fi scrisă valoarea dacă primul cuvânt este o anagramă pentru al doilea sau numărul total de litere prin care diferă cuvintele între ele. Pe a treia linie va fi scris un număr natural care reprezentă lungimea prefixului, dacă unul dintre cuvinte este prefix al celuilalt sau valoarea în caz contrar.
Restricţii şi precizări
- Fiecare cuvânt conţine maxim de litere (mici sau mari) din alfabetul englez.
- Un cuvânt este o anagramă a altui cuvânt dacă el este format din aceleaşi litere cu acel cuvânt, eventual aşezate într-o altă ordine. De exemplu cuvântul "armata" este o anagramă a cuvântului "tamara".
- Punctaj: Pentru rezolvarea corectă a primei cerinţe se acordă din punctaj. Pentru rezolvarea corectă a primelor două cerinţe se acordă din punctaj. Punctajul integral se acordă pentru rezolvarea corectă a tuturor celor trei cerinţe.
Exemplul 1
cuvinte.in
abc
abc
cuvinte.out
2
0
3
Explicație
Toate literele apar de ori.
Primul cuvânt este anagrama celui de-al doilea.
abc
reprezintă prefix pentru abc
.
Exemplul 2
cuvinte.in
abc
aBcB
cuvinte.out
3
1
0
Explicație
Litera b
/B
, apare în total de ori o dată în primul şir şi de două ori în al doilea.
Al doilea cuvânt are o literă b
în plus faţă de primul.
Nici un cuvânt nu reprezintă prefix pentru celălalt, deoarece se face distincţie între literele mari şi mici.
Exemplul 3
cuvinte.in
maree
amare
cuvinte.out
3
2
0
Explicație
Există în total litere a
şi litere e
, acesta fiind numărul maxim de apariţii ale unei litere în cele două cuvinte.
Primul cuvânt are o literă e
în plus faţă de cel de-al doilea, iar al doilea cuvânt are o literă a
în plus faţă de primul.
Niciun cuvânt nu este prefix al celuilalt.