Se considera un graf care initial este format din P noduri izolate, etichetate de la 1 la P. Se mai considera N intrari, unde intrare poate însemna:
· comanda – o comanda are forma 'I+J', cu semnificatia ca în graf se adauga muchia care uneste nodurile I si J (daca I si J erau deja unite în acel moment, nu se întreprinde nici o actiune);
· întrebare – o întrebare este de forma 'I?J', adica se întreaba daca în acel moment I si J sunt în aceeasi componenta conexa.
Se pleaca deci de la un graf initial format din noduri izolate, care pe parcurs se „unifica”. Tot pe parcurs sunteti întrebat daca anumite perechi de noduri sunt sau nu în aceeasi componenta conexa.
Din fisierul ENTRIES.IN veti citi de pe prima linie numarul N de intrari. Pe urmatoarele N linii se gasesc intrarile, câte una pe linie. O intrare este codificata prin trei numere separate prin câte un blanc. Primele doua numere reprezinta nodurile I si J (numere întregi, cuprinse între 1 si P), iar al treilea este 1 daca intrarea este o comanda, respectiv 2 daca intrarea este o întrebare.
La fiecare întrebare, veti scrie pe o linie separata în fisierul ENTRIES.OUT numarul 1 daca nodurile despre care ati fost întrebat sunt în acel moment în aceeasi componenta conexa, respectiv numarul 0 în caz contrar.
· 1 <= P <= 10 000 000
Exemplu:
ENTRIES.IN
9
1 2 2
1 2 1
3 7 2
2 3 1
1 3 2
2 4 2
1 4 1
3 4 2
1 7 2
ENTRIES.OUT
0
0
1
0
1
0
Timp maxim de executare/test: 1 secunda