#include <bits/stdc++.h>
using namespace std;
const long long mod = 1000000007LL;
int n;
int r, s, p;
double pr[102][102][102];
double solve(int id) {
  for (int i = 0; i <= r; ++i) {
    for (int j = 0; j <= s; ++j) {
      for (int k = 0; k <= p; ++k) {
        if (id == 0) {
          if (i == 0) {
            pr[i][j][k] = 0.0;
            continue;
          } else if (k == 0) {
            pr[i][j][k] = 1.0;
            continue;
          } else if (j == 0) {
            pr[i][j][k] = 0.0;
            continue;
          }
        } else if (id == 1) {
          if (j == 0) {
            pr[i][j][k] = 0.0;
            continue;
          } else if (i == 0) {
            pr[i][j][k] = 1.0;
            continue;
          } else if (k == 0) {
            pr[i][j][k] = 0.0;
            continue;
          }
        } else {
          if (k == 0) {
            pr[i][j][k] = 0.0;
            continue;
          } else if (j == 0) {
            pr[i][j][k] = 1.0;
            continue;
          } else if (i == 0) {
            pr[i][j][k] = 0.0;
            continue;
          }
        }
        int tot = i + j + k;
        double p2 = pr[i - 1][j][k] * (double)i * (double)k +
                    pr[i][j - 1][k] * (double)i * (double)j +
                    pr[i][j][k - 1] * (double)j * (double)k;
        double p3 = (double)tot * (double)(tot - 1) / 2.0 -
                    (double)i * (double)(i - 1) / 2.0 -
                    (double)j * (double)(j - 1) / 2.0 -
                    (double)k * (double)(k - 1) / 2.0;
        pr[i][j][k] = p2 / p3;
      }
    }
  }
  return pr[r][s][p];
}
int main() {
  cin >> r >> s >> p;
  n = r + s + p;
  printf("%.10lf %.10lf %.10lf\n", solve(0), solve(1), solve(2));
  return 0;
}
