cuvinte

Time limit: 0.02s Memory limit: 2MB Input: cuvinte.in Output: cuvinte.outPoints by default: 10p

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 00 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 00 în caz contrar.

Restricţii şi precizări

  • Fiecare cuvânt conţine maxim 10001000 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ă 30%30\% din punctaj. Pentru rezolvarea corectă a primelor două cerinţe se acordă 70%70\% 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 22 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 33 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 33 litere a şi 33 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.

Log in or sign up to be able to send submissions!