Nu aveti permisiuni pentru a descarca fisierul grader_test5.ok
Diferente pentru problema/mesaje intre reviziile #5 si #13
Nu exista diferente intre titluri.
Diferente intre continut:
== include(page="template/taskheader" task_id="mesaje") ==
După multe năzbâtii făcute împreună, Alex şi Cipri nu mai au voie să se întâlnească. Alex – strategul echipei - a plănuit o nouă poznă şi a decis să-i transmită prietenului său planul de luptă, constând din anumite cuvinte dintr-un mesaj $m{~0~}$. Pentru a nu fi descoperiţi, i-a trimis ulterior mai multe mesaje $m{~1~},m{~2~},…$ lui Cipri, acesta trebuind să le descifreze folosind convenţia secretă stabilită la începutul prieteniei lor şi să „acţioneze”. Fiecare mesaj $m{~i~}$ este format din mai multe cuvinte, separate prin câte un spaţiu, numerotate cu valori consecutive, începând de la $1$. Pentru a afla planul, Cipri trebuie să găsească cea mai mare valoare i≥0 astfel încât mesajele m[i]şi m[0] să conţină cel puţin un cuvânt identic având acelaşi număr de ordine în ambele mesaje. Din $m{~0~}$ se păstrează toate cuvintele care se găsesc şi în mesajul $m{~i~}$ cu acelaşi număr de ordine ca în $m{~0~}$. Cuvintele păstrate trebuie ordonate în ordine descrescătoare lexicografică a puterii lor. Puterea cuvântului cu numărul de ordine $j$ în $m{~0~}$ este egală cu şirul ordonat descrescător al indicilor mesajelor în care apare cu acelaşi număr de ordine ca în m{~0~}. Astfel, un cuvânt care a apărut cu numărul de ordine $2$ în mesajele $m{~0~},m{~6~} şi m{~8~}$ are puterea ${8,6,0}$. Dacă două cuvinte au aceeaşi putere, vor rămâne în ordinea din mesajul iniţial. Lui Cipri nu i-a mai rămas decât să citească fiecare cuvânt de la dreapta la stânga şi a descifrat tot planul de luptă!
După multe năzbâtii făcute împreună, Alex şi Cipri nu mai au voie să se întâlnească. Alex – strategul echipei - a plănuit o nouă poznă şi a decis să-i transmită prietenului său planul de luptă, constând din anumite cuvinte dintr-un mesaj $m{~0~}$. Pentru a nu fi descoperiţi, i-a trimis ulterior mai multe mesaje $m{~1~}, m{~2~}, ...$ lui Cipri, acesta trebuind să le descifreze folosind convenţia secretă stabilită la începutul prieteniei lor şi să „acţioneze”. Fiecare mesaj $m{~i~}$ este format din mai multe cuvinte, separate prin câte un spaţiu, numerotate cu valori consecutive, începând de la $1$. Pentru a afla planul, Cipri trebuie să găsească cea mai mare valoare $i ≥ 0$ astfel încât mesajele $m{~i~}$ şi $m{~0~}$ să conţină cel puţin un cuvânt identic având acelaşi număr de ordine în ambele mesaje. Din $m{~0~}$ se păstrează toate cuvintele care se găsesc şi în mesajul $m{~i~}$ cu acelaşi număr de ordine ca în $m{~0~}$. Cuvintele păstrate trebuie ordonate în ordine descrescătoare lexicografică a puterii lor. Puterea cuvântului cu numărul de ordine $j$ în $m{~0~}$ este egală cu şirul ordonat descrescător al indicilor mesajelor în care apare cu acelaşi număr de ordine ca în m{~0~}. Astfel, un cuvânt care a apărut cu numărul de ordine $2$ în mesajele $m{~0~}$, $m{~6~}$ şi $m{~8~}$ are puterea ${8, 6, 0}$. Dacă două cuvinte au aceeaşi putere, vor rămâne în ordinea din mesajul iniţial. Lui Cipri nu i-a mai rămas decât să citească fiecare cuvânt de la dreapta la stânga şi a descifrat tot planul de luptă!
h2. Cerinţă
h2. Date de intrare
Fişierul de intrare mesaje.in conţine în ordine mesajele $m{~0~},m{~1~},m{~2~},…,$ câte unul pe linie.
Fişierul de intrare $mesaje.in$ conţine în ordine mesajele $m{~0~}, m{~1~}, m{~2~}, ...,$ câte unul pe linie.
h2. Date de ieşire
Fişierul de ieşire mesaje.out va conţine pe prima linie numărul $n$ de cuvinte ale planului de luptă, iar pe cea de a doua linie cele $n$ cuvinte ale planului de luptă.
Fişierul de ieşire $mesaje.out$ va conţine pe prima linie numărul $n$ de cuvinte ale planului de luptă, iar pe cea de a doua linie cele $n$ cuvinte ale planului de luptă.
h2. Restricţii si precizări
* Lungimea unui mesaj este de maxim $30002$ de caractere. * Toate mesajele au acelaşi număr de cuvinte. * Fişierul de intrare conţine cel puţin unul şi cel mult $128$ de mesaje.
* Orice linie din fişierul de intrare (mesaj) se termină cu marcajul de sfârşit de linie (newline). Caracterul newline nu va fi considerat ca făcând parte din mesaj.
* Orice linie din fişierul de intrare (mesaj) se termină cu marcajul de sfârşit de linie $(newline)$. Caracterul $newline$ nu va fi considerat ca făcând parte din mesaj.
* Nu există mesaje vide. * Se acordă $40%$ din punctajul corespunzător fiecărui test pentru determinarea valorii $n$ şi întregul punctaj pentru rezolvarea corectă a ambelor cerinţe.
sarim pe geam |
h3. Explicaţie Pentru primul exemplu:
h3.Explicaţie
* Mesajele $m{~0~}$ şi $m{~4~}$ nu conţin cuvinte identice cu acelaşi număr de ordine. Mesajele $m{~0~}$ şi $m{~3~}$ conţin trei cuvinte identice cu acelaşi număr de ordine: $inosos, ataeclud, ni$. În ordinea puterii, ele sunt: $ataeclud {3,1,0}, ni {3,1,0}, inosos{3,0}$.
Pentru primul exemplu : Mesajele $m{~0~}$ şi $m{~4~}$ nu conţin cuvinte identice cu acelaşi număr de ordine. Mesajele $m{~0~}$ şi $m{~3~}$ conţin trei cuvinte identice cu acelaşi număr de ordine: $inosos, ataeclud, ni$. În ordinea puterii, ele sunt: $ataeclud {3,1,0}, ni {3,1,0}, inosos{3,0}$.
Pentru al doilea exemplu :
Pentru că a primit un singur mesaj, planul de luptă conţine oglinditele cuvintele din textul iniţial având toate aceeaşi putere, citite de la dreapta la stânga.
* Pentru că a primit un singur mesaj, planul de luptă conţine oglinditele cuvintele din textul iniţial având toate aceeaşi putere, citite de la dreapta la stânga.
== include(page="template/taskfooter" task_id="mesaje") ==
Nu exista diferente intre securitate.
Diferente intre topic forum:
4751