Fişierul intrare/ieşire:cenzurate.in, cenzurate.outSursăCDL ETTI 2014 Selection
AutorCosmin BoacaAdăugată dea_h1926Heidelbacher Andrei a_h1926
Timp execuţie pe test0.5 secLimită de memorie20480 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

Cenzurate

Scopul acestei teme este de a realiza un program care va filtra mesajele de pe un forum cu discuţii legate de programare şi va executa nişte statistici simple. Filtrarea mesajelor constă în cenzurarea cuvintelor inadecvate.

Conţinutul unui forum va fi simulat prin conţinutul unui fişier text.

Cerinţă

Se cere să se înlocuiască orice cuvânt care apare în lista de cuvinte inadecvate cu un cuvânt format din prima literă a acestuia şi un număr de steluţe corespunzătoare lungimii cuvântului.
Exemplu:

  • cenzură - c******
  • parte - p****

De asemenea, se cere determinarea celui mai popular utilizator. Se va calcula un scor pentru fiecare utilizator folosind următoarea formulă: număr_posturi_bune(user) - număr_posturi_rele(user).
Un post despre un anumit user (A) este considerat:

  • bun, dacă este postat de un alt user (B), conţine numele user-ului (A) şi nu conţine niciun cuvânt inadecvat
  • rău, dacă este postat de un alt user (B), conţine numele user-ului (A) şi conţine cel puţin un cuvânt inadecvat

Date de intrare

Prima linie a fişierului de intrare cenzurate.in conţine 2 numere:

  • N = numărul de utilizatori ai forumului
  • K = numărul de cuvinte ce trebuie cenzurate

Urmează apoi K linii. Fiecare linie conţine un cuvânt. Acestea sunt cuvintele ce vor trebui cenzurate.
Urmează N blocuri ce definesc datele fiecărui utilizator. Fiecare utilizator are mai multe mesaje postate pe forum. K1, K2, ..., KN reprezintă numărul de mesaje ale fiecărui utilizator.

Input:
N K
cuvant_1
cuvant_2

cuvant_K
Nume_User_1 K1
mesaj_1
mesaj_2

mesaj_K1
Nume_User_2 K2
mesaj_1

mesaj_K2

Nume_User_N KN
mesaj_1

mesaj_KN

Date de ieşire

Fişierul de ieşire cenzurate.out va conţine datele de ieşire în următorul format:
Nume_User_1
mesaje_prelucrate_cate_unul_pe_linie
Nume_User_2
mesaje_prelucrate_cate_unul_pe_linie

Nume_User_N
mesaje_prelucrate_cate_unul_pe_linie
Most popular : Nume_User_Cel_Mai_Popular

Restricţii

  • linile vor avea maxim 2000 de caractere
  • un mesaj este scris pe o singură linie
  • niciun utilizator nu are mai mult de 100 de postări
  • N ≤ 100
  • K ≤ 200
  • pot exista mai multi useri care sa aiba scorul maxim de popularitate, iar in acest caz trebuie afisati toti in forma:
    Most popular : user1 user2 user3 ...
    in ordinea in care apar in fisierul de intrare
Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?