Fișierul intrare/ieșire progresie.in, progresie.out Sursă ad-hoc
Autor din folclor Adăugată de avatar mathboy Dragos Alin Rotaru mathboy
Timp de execuție pe test 0.1 sec Limită de memorie 1024 KB
Scorul tău N/A Dificultate stea de rating de tip fullstea de rating de tip emptystea de rating de tip emptystea de rating de tip emptystea de rating de tip empty
open book Poți vedea testele pentru această problemă accesând atașamentele .

Progresie

Cu toții știm ce e un triplet (o pereche de 3 numere). Un triplet (x, y, z) se numește progresie aritmetică dacă y – x = z – y.
Se dau 3 numere a, b, c. Aveți dreptul la o operație de transformare a tripletului, și anume: alegeți unul din cele 3 numere și îi creșteți valoarea cu un număr r sau o micșorați cu r.

Gigel vă oferă un suc dacă reușiți să găsiți un număr r >= 0 (nu neapărat întreg) minim, astfel încât să transformați tripletul (a, b, c) într-o progresie aritmetică. Pentru că Gigel este un băiat curios, acesta vă pune T triplete la dispoziție și are încredere în voi că veți răspunde pentru fiecare triplet în parte corect.

Date de intrare

Fișierul de intrare progresie.in va conține pe prima linie un număr natural T. Următoarele T linii conțin fiecare câte 3 numere naturale a, b, c.

Date de ieșire

În fișierul de ieșire progresie.out se vor afla T linii, pe fiecare linie aflându-se un număr r, reprezentând răspunsul la fiecare întrebare a lui Gigel.

Restricții

  • 1 ≤ T ≤ 20
  • 0 ≤ a ≤ 1000
  • 0 ≤ b ≤ 1000
  • 0 ≤ c ≤ 1000

Exemplu

progresie.in progresie.out
4
0 1 2
0 2 1
3 2 1
4 4 8
0.0
1.5
0.0
2.0

Explicație

1) (0, 1, 2) este deja progresie aritmetica (1 – 0 = 2 – 1)
2) (0, 1, 2) este progresie aritmetica, dar Gigel nu va lasa sa rearanjati numerele. Alegem r = 1.5 si scadem din b, obtinand din tripletul (0, 2, 1) pe (0, 0.5, 1).

Trebuie să te autentifici pentru a trimite soluții. Click aici