Fișierul intrare/ieșire | trigrame.in, trigrame.out | Sursă | Concursul Infotehnium 2012 |
---|---|---|---|
Autor | Cristian Frâncu | Adăugată de | Cristian Frâncu • francu |
Timp de execuție pe test | 1 sec | Limită de memorie | 2048 KB |
Scorul tău | N/A | Dificultate |
Vezi soluțiile trimise | Statistici
Trigrame (clasa a 7-a)
Austin Powers este în posesia unui text interceptat de la Dr. Evil, conținând informații cruciale despre viitoarea lui mișcare. Din nefericire textul este codificat. El conține numai litere mari, litere mici și cifre. Pentru a-l ajuta pe Austin în munca lui de decodificare el te angajează pe tine în echipa sa tehnică. Tu ești responsabil pentru furnizarea anumitor statistici.
Un informator din interiorul lui Virtucon, organizația doctorului Evil, ne-a furnizat o informație importantă: codificarea se bazează pe trigrame, adică pe secvențe de trei caractere aflate pe poziții succesive în text. De aceea, Austin ne cere să îi calculăm următoarele date:
- N, numărul de trigrame distincte în textul codificat
- F, cât de des apare cea mai frecventă trigramă
- K, numărul de trigrame care apar de F ori în textul codificat
Cerință
Dat textul codificat din posesia lui Austin Powers să se calculeze N, F și K.
Date de intrare
Fișierul de intrare trigrame.in conține pe prima linie textul codificat, format numai din caractere litere mari, litere mici si cifre. Textul se termină cu sfârșit de linie.
Date de ieșire
Fișierul de ieșire trigrame.out va conține o singură linie care conține cele trei numere N, F și K, despărțite prin spațiu.
Restricții
- Textul codificat are lungime minimă de 3 caractere și maximă de 1 milion de caractere.
- Pentru afișarea corectă a lui N se acordă 40% din punctaj. Pentru afișarea corectă a lui F și a lui K se acordă câte 30% din punctaj. Pentru a beneficia de punctaje parțiale, fișierul de ieșire trebuie să conțina 3 valori. N, F și K se vor identifica după poziția lor în trigrame.out.
Exemplu
trigrame.in | trigrame.out | Explicație |
---|---|---|
ABCABCABC |
3 3 1 |
Sunt 3 trigrame distincte: ABC, BCA, CAB. Cea mai frecventă trigramă apare de 3 ori. Există o singură trigramă care apare de 3 ori: ABC |
AbAbAbAb2b22b2Ab2b2 |
9 3 3 |
Sunt 9 trigrame distincte: AbA, bAb, Ab2, b2b, 2b2, b22, 22b, b2A, 2Ab. Cele mai dese trigrame apar de 3 ori. Sunt 3 trigrame care apar de 3 ori: AbA, bAb, 2b2 |