== include(page="template/taskheader" task_id="numinum") ==
!{width: 500px; float: center; margin: 35px}problema/numinum?Capture.PNG!
Se consideră următoarea structură de date:
* În vârful structurii se găseşte fracţia <tex> \frac{1}{1} </tex>
* Din fiecare vârf în care se găseşte fracţia <tex> \frac{p}{q}</tex> se formează alte două fracţii trasând câte 2 segmente de dreaptă astfel: către stânga fracţia <tex> \frac{p}{p+q} </tex> şi către dreapta fracţia <tex> \frac{p+q}{q}</tex>.
* Din fiecare vârf în care se găseşte fracţia se formează alte două fracţii trasând câte 2 segmente de dreaptă astfel: către stânga fracţia <tex> \frac{p}{p+q} </tex> şi către dreapta fracţia <tex> \frac{p+q}{q}</tex>.
h2. Date de intrare
Pe prima linie a fişierului de intrare $numinum.in$ se găseşte un număr natural $N$.
Pe fiecare dintre următoarele $N$ linii se găsesc câte 4 numere naturale x{~i~}, y{~i~}, a{~i~}, b{~i~}, 1 ≤ i ≤ $N$, despărţite prin câte un spaţiu unde $x{~i~}$, $y{~i~}$ reprezintă numărătorul, respectiv numitorul primei fracţii de pe linia $i+1$, iar $a{~i~}$ , $b{~i~}$ reprezintă numărătorul, respectiv numitorul celei de-a doua fracţii de pe linia $i+1$.
h2. Date de ieşire
Fişierul de ieşire $numinum.out$ va conţine $N$ linii. Pe linia $i$ se va scrie numărul minim de segmente de dreaptă necesare pentru a conecta, pe structura dată, fracţia $x{~i~}/y{~i~}$ cu fracţia $a{~i~}/b{~i~}$.
Pe fiecare dintre următoarele $N$ linii se găsesc câte 4 numere naturale x{~i~}, y{~i~}, a{~i~}, b{~i~}, 1 ≤ i ≤ $N$, despărţite prin câte un spaţiu unde $x{~i~}$, $y{~i~}$ reprezintă numărătorul, respectiv numitorul primei fracţii de pe linia $i+1$, iar $a{~i~}$ , $b{~i~}$ reprezintă numărătorul, respectiv numitorul celei de-a doua fracţii de pe linia $i+1$.
h2. Restricţii
* $1 ≤ N ≤ 10000$