Fie doi arbori și . Arborele are nodurile , iar arborele are nodurile . Pentru oricare și , se garantează că există o muchie între și dacă și numai dacă exista o muchie între și . Toate muchiile din arborii și au lungimea .
Frunzele dintr-un arbore pot fi conectate cu corespondentul lor din celălalt arbore printr-o muchie de lungime . Cu alte cuvinte, pentru oricare , frunza poate fi conectată printr-o muchie cu frunza . Dacă frunza este conectată cu frunza , atunci frunza respectivă se consideră activă, iar altfel este inactivă.
Inițial, toate frunzele sunt inactive. Avem două tipuri de operații:
1 v— schimbă starea frunzelor și : devin active din inactive și vice-versa;2 u v— se cere să se afle lungimea celui mai scurt drum de la nodul la nodul .
Date de intrare
Pe prima linie a fișierului de intrare se află doi întregi și — numărul de noduri și numărul de operații. Pe fiecare din următoarele linii se află câte doi întregi — structura arborilor — muchiile și .
Fiecare dintre următoarele linii descriu operațiile. Fiecare operație este fie de forma 1 v , fie de forma 2 u v .
Date de ieșire
Pentru fiecare operație de tipul , în ordinea de la intrare, câte un întreg pe o linie — lungimea drumului minim dintre cele două noduri date. Dacă nu există un astfel de drum, se va afișa .
Restricții și precizări
- Fie numărul total de operații de tipul .
| # | Punctaj | Restricții |
|---|---|---|
| 1 | 3 | |
| 2 | 3 | |
| 3 | 2 | și |
| 4 | 8 | |
| 5 | 9 | și |
| 6 | 30 | și toate operațiile de tipul apar înaintea tuturor operațiilor de tipul |
| 7 | 45 | Fără restricții suplimentare. |
Exemplul 1
stdin
7 11
1 2
2 3
1 4
2 5
4 6
4 7
1 6
1 3
2 1 6
2 1 2
1 7
2 5 4
2 6 3
1 6
1 3
1 5
2 6 3
stdout
2
3
5
4
6
Explicație
Arborii și au următoarea structură.

Pentru prima interogare, structura arborelui este cea de mai jos. Un drum posibil este desenat cu roșu. Muchiile punctate au lungimea .

A doua interogare apare mai jos.

A treia interogare apare mai jos.

A patra interogare apare mai jos.

Ultima interogare apare mai jos.

Exemplul 2
stdin
2 2
1 2
1 1
2 1 2
stdout
1