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

Diferente intre titluri:

Paduri de multimi disjuncte
disjoint

Diferente intre continut:

== include(page="template/taskheader" task_id="disjoint") ==
Se dau $N$ multimi de numere, initial fiecare multime $i$ continand un singur element, mai exact elementul $i$. Asupra acestor multimi se pot face $2$ tipuri de interogari, astfel:
 
* interogarea de tipul $1$: se dau doua numere. $x$ si $y$, se cere sa reuneasca multimile in care se afla elementul x, respectiv elementul y (se garanteaza ca $x$ si $y$ nu se vor afla in aceeasi multime)
* interogarea de tipul $2$: se dau doua numere. $x$ si $y$, se cere sa afiseze "DA" daca cele $2$ elemente se afla in aceeasi multime, respectiv "NU" in caz contrar.
Poveste şi cerinţă...
h2. Date de intrare
Pe prima linie a fisierului de intrare $disjoint.in$ se vor afla $2$ numere, $N$ si $M$, reprezentand numarul de multimi, respectiv numarul de interogari facute asupra lor. Pe urmatoarele $M$ linii se vor afla cate $3$ numere, $cod$, $x$ si $y$, $cod$ reprezentand tipul interogarii, $x$ si $y$ avand semnificatia din enunt.
Fişierul de intrare $disjoint.in$ ...
h2. Date de ieşire
In fisierul de iesire $disjoint.out$ se vor afisa mai multe linii, fiecare linie continand $"DA"$ sau $"NU"$ reprezentand raspunsul la interogarea respectiva.
În fişierul de ieşire $disjoint.out$ ...
h2. Restricţii
* $1 ≤ N ≤ 100 000$
* $1 ≤ M ≤ 100 000$
* $... ≤ ... ≤ ...$
h2. Exemplu
table(example). |_. disjoint.in |_. disjoint.out |
| 3 6
1 1 2
1 3 4
2 1 3
2 1 2
1 1 3
2 1 4
| NU
DA
DA
| This is some
  text written on
  multiple lines.
| This is another
  text written on
  multiple lines.
|
h3. Explicaţie

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.