#include <bits/stdc++.h>
using namespace std;
int A0, B0, C0;
void init() { scanf("%d%d%d", &A0, &B0, &C0); }
int calc(int a, int b, int c) {
  if (a == 1 && b == 1 && c == 1) return 1;
  if (a == 0 || b == 0 || c == 0) return 0;
  return (a + b + c) * 2 - 6;
}
void work() {
  int i, ans = 0;
  int A = A0, B = B0, C = C0;
  while (true) {
    ans += calc(A, B, C);
    int f1 = 0, f2 = 0;
    if (A == 1) f1++;
    if (B == 1) f1++;
    if (C == 1) f1++;
    if (A == 2) f2++;
    if (B == 2) f2++;
    if (C == 2) f2++;
    if (f1 >= 2) break;
    if (f1 >= 1 && f2 >= 1) break;
    if (A == 1 && B != 1 && C != 1) {
      B -= 2;
      C -= 2;
      if (B == 0 || C == 0) break;
    } else {
      if (A != 1 && B == 1 && C != 1) {
        A -= 2;
        C -= 2;
        if (A == 0 || C == 0) break;
      } else {
        if (A != 1 && B != 1 && C == 1) {
          A -= 2;
          B -= 2;
          if (A == 0 || B == 0) break;
        } else {
          A--;
          B--;
          C--;
        }
      }
    }
  }
  cout << ans;
}
int calc2(int k) {
  if (k > min(B0, C0)) return A0 + min(B0, C0) - 1;
  return A0 + k - 1;
}
void work2() {
  int tmp = (B0 + C0 - 1) / 2, ans = 0, i;
  for (i = 1; i <= tmp; i++) {
    ans += calc2(i);
  }
  ans *= 2;
  if (tmp * 2 != B0 + C0 - 1) ans += calc2(tmp + 1);
  cout << ans << endl;
}
int main() {
  init();
  work2();
  return 0;
}
