Fișierul intrare/ieșire | progresie.in, progresie.out | Sursă | ad-hoc |
---|---|---|---|
Autor | din folclor | Adăugată de | Dragos Alin Rotaru • mathboy |
Timp de execuție pe test | 0.1 sec | Limită de memorie | 1024 KB |
Scorul tău | N/A | Dificultate |
Vezi soluțiile trimise | Statistici
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).