Pagini recente » Atasamentele paginii Profil bogdan62003 | Monitorul de evaluare | Monitorul de evaluare | Monitorul de evaluare | Diferente pentru problema/cenzurate intre reviziile 2 si 1
Nu exista diferente intre titluri.
Diferente intre continut:
== include(page="template/taskheader" task_id="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.
h2. 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
Poveste şi cerinţă...
h2. Date de intrare
Prima linie a fişierului $cenzurate.in$ conţine $3$ numere:
* N = numărul de utilizatori ai forumului
* K = numărul de cuvinte ce trebuie cenzurate
* P = vezi task 2 ).
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. $K{~1~}, K{~2~}, ..., K{~N~}$ reprezintă numărul de mesaje ale fiecărui utilizator.
Input:
$N K$
$cuvant_1$
$cuvant_2$
$…$
$cuvant_K$
$Nume_User_1 K{~1~}$
$mesaj_1$
$mesaj_2$
$…$
$mesaj_K{~1~}$
$Nume_User_2 K{~2~}$
$mesaj_1$
$…$
$mesaj_K{~2~}$
…
$Nume_User_N K{~N~}$
$mesaj_1$
$…$
$mesaj_K{~N~}$
Fişierul de intrare $cenzurate.in$ ...
h2. 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$
În fişierul de ieşire $cenzurate.out$ ...
h2. 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$
* $... ≤ ... ≤ ...$
h2. Exemplu
table(example). |_. cenzurate.in |_. cenzurate.out |
h3. Explicaţie
...
== include(page="template/taskfooter" task_id="cenzurate") ==
Nu exista diferente intre securitate.
Topicul de forum nu a fost schimbat.