#include <bits/stdc++.h>
using namespace std;
void A7med_S3d() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
}
bool prime(long long n) {
  if (n == 2) return 1;
  if (n < 2 || n % 2 == 0) return 0;
  for (int i = 3; i * i <= n; i++)
    if (n % i == 0) return 0;
  return 1;
}
bool palindrom_numbers(int n) {
  int arr[100], c = 0;
  while (n != 0) {
    arr[c] = n % 10;
    if (n % 10 == 0) return false;
    n /= 10;
    c++;
  }
  for (int i = 0; i < c / 2; i++) {
    if (arr[i] != arr[c - i - 1]) return false;
  }
  return true;
}
string tostring(int num) {
  string x;
  while (num) {
    x += (num % 10 + '0');
    num /= 10;
  }
  return x;
}
long long fact(long long n) {
  long double sum = 1;
  for (long long i = 2; i <= n; i++) sum *= i;
  return sum;
}
int sum(int n) {
  int sum1 = 0;
  for (int i = 1; i <= n; i++) sum1 += i;
  return sum1;
}
int main() {
  A7med_S3d();
  int a, b;
  cin >> a >> b;
  int mn = max(a, b) - min(a, b);
  if (mn % 2 == 0)
    cout << sum(mn / 2) * 2 << endl;
  else
    cout << sum(mn / 2) + sum((mn + 1) / 2) << endl;
  return 0;
}
