Diferente pentru problema/pswap intre reviziile #1 si #2

Diferente intre titluri:

pswap
Pswap

Diferente intre continut:

== include(page="template/taskheader" task_id="pswap") ==
Poveste şi cerinţă...
Esti in anul 2121 si vrei să configurezi o retea de Neuralink. Ai la dispozitie $N$ servere, ale căror IP-uri sunt reprezentate de permutări de lungime $M$ (ale numerelor $0, 1 ... M − 1$). Vrei ca reteaua ta să fie cât de mare, dar ı̂n acelasi timp, te temi de potentiale probleme de securitate: dacă un hacker află unul dintre IP-uri, ı̂i va fi usor să găsească un IP similar. Prin urmare, dintre cele $N$ servere pe care le ai la dispozitie, vrei să alegi cât de multe servere pentru reteaua ta astfel ı̂ncât să nu existe două servere cu IP-uri similare. Două IP-uri sunt similare, dacă unul dintre ele poate fi obtinut din celălalt print exact o operatie swap (o interschimbare a oricăror două elemente). De exemplu, IP-urile $(0, 1, 2)$ si $(1, 0, 2)$ sunt similare, dar $(0, 1, 2)$ si $(1, 2, 0)$ nu.
h2. Date de intrare
h2. Protocol de interactiune
Fişierul de intrare $pswap.in$ ...
Concurentul trebuie să implementeze o functie:
 
== code(c) |
(C)   int solve(int N, int M, int** p);
==
 
== code(cpp) |
(C++) int solve(int N, int M, std::vector< std::vector<int> > p);
==
 
Parametrii $N$ si $M$ au semnificatia din enunt. $p$ reprezintă o matrice cu $N$ linii si $M$ coloane, linia $i$ reprezentând cel de-al $i$-lea IP (o permutare de lungime $M$ ). Functia va ı̂ntoarce numărul maxim de IP-uri nesimilare. *Concurentul trebuie să nu implementeze funcţia $main$*.
 
*Din cauza limitărilor impuse de Infoarena şi pentru a reproduce condiţiile din concurs, recomandăm să foloseşti template-urile de aici.*
h2. Date de ieşire

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.