Cerința
Doi prieteni se afla pe axa Ox, in puncte cu coordonate întregi. Primul se află în punctul x1 = a, iar al doilea se află în punctul x2 = b. Fiecare se poate mișca cu o poziție, la stânga sau la dreapta, de un număr nelimitat de ori. Când se mișcă, oboseala se modifică după următoarea regulă: la prima mișcare oboseala crește cu 1, la a doua mișcare oboseala crește cu 2, la a treia cu 3 și asa mai departe. De exemplu, dacă un prieten se mișcă mai întâi la stânga, apoi la dreapta, și apoi iar la stânga, oboseala lui devine 1 + 2 + 3 = 6.
Prietenii vor să se întâlnească într-un punct cu coordonata număr întreg. Aflați oboseala totală minimă pe care cei doi cei doi o vor acumula.
Date de intrare
Programul citește de la tastatură numerele a si b.
Date de ieșire
Programul va afișa pe ecran numărul S, reprezentând oboseala minimă posibilă acumulată de cei doi prieteni.
Restricții și precizări
1 ≤ a ≤ 10001 ≤ b ≤ 1000a≠b
Exemplu
Intrare
3 4
Ieșire
1
Explicație
Primul prieten face un pas la dreapta (ajungând la punctul b=4), sau al doilea prieten face un pas la stânga (ajungând la punctul a=3). În ambele cazuri, oboseala totala este egală cu 1.
#include <bits/stdc++.h>
using namespace std;
int main()
{
int a , b;
cin >> a >> b;
if(a > b)
swap(a , b);
bool ok = true;
int cnt = 0;
for(int i = 1 ; ok ; ++i)
{
if(a != b)
{
a++;
cnt+=i;
if(a == b)
ok=false;
else
b-- , cnt+=i;
}
else
{
ok = false;
}
}
cout << cnt;
return 0;
}