Diferente pentru problema/streetcrypto intre reviziile #6 si #18

Nu exista diferente intre titluri.

Diferente intre continut:

== include(page="template/taskheader" task_id="streetcrypto") ==
Văcuţă a devenit foarte interesat de studiile pe care prietenul său, Rotiţă, le face în domeniul criptografiei.
Petre Căpraru, student la "Facultatea de Informatică şi Care Era Cealaltă Chestie?", a devenit foarte interesat de studiile pe care prietenul său, Ştefan Şenilă, le face în domeniul criptografiei. Petrică a hotărât astfel să dezvolte un nou algoritm de criptare, pe baza căruia să-şi facă licenţa, doctoratul, poate şi o invitaţie de nuntă când va fi cazul. Algoritmul funcţionează în felul următor:
 
Petrică vrea să cripteze $N$ numere prime *distincte* cu valori mai mici sau egale cu $1.000.000.000$. Acestea sunt stocate în şirul $Prim[]$. Pentru a le cripta, el va face următorii paşi:
 
1. Îşi va alege o permutare aleatoare de lungime $N$, fie ea $P$.
2. Va construi un nou şir $V$ obţinut după regula: $V[i] = Prim[i] * Prim[P[i]], pentru orice i în [1, N]$.
3. Dacă elementele lui $V$ sunt distincte, algoritmul se termină. Altfel, se reia pasul 1.
 
Având la dispoziţie şirul $V$ după ce s-a terminat algoritmul, recuperaţi mulţimea de numere prime, ruinând astfel şansele lui Petrică de a avea un viitor decent.
h2. Date de intrare
Fişierul de intrare $streetcrypto.in$ va conţine pe prima sa linie numărul de teste, $T$. Urmează $T$ teste, fiecare având următorul format: pe prima linie se va afla numărul de valori $N$ urmat pe a doua linie de $N$ valori întregi *distincte*.
Fişierul de intrare $streetcrypto.in$ va conţine pe prima sa linie numărul de teste $T$. Urmează $T$ teste, fiecare având următorul format: pe prima linie se va afla numărul de valori $N$ urmat pe a doua linie de $N$ valori întregi *distincte*.
h2. Date de ieşire

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.