#include <bits/stdc++.h>
using namespace std;
double dp[105][105][105];
double f(int r, int s, int p, int k) {
  if (dp[r][s][p] != -1) return dp[r][s][p];
  if (r + s == 0 || s + p == 0 || r + p == 0) {
    if (k == 1 && p + s == 0) return 1.0;
    if (k == 2 && r + p == 0) return 1.0;
    if (k == 3 && r + s == 0) return 1.0;
    return 0;
  }
  dp[r][s][p] = 0;
  double sum = r * s + s * p + p * r;
  if (r > 0 && s > 0)
    dp[r][s][p] += (double(r * s)) * (f(r, s - 1, p, k)) / (1.0 * sum);
  if (s > 0 && p > 0)
    dp[r][s][p] += (double(s * p) * f(r, s, p - 1, k)) / (1.0 * sum);
  if (p > 0 && r > 0)
    dp[r][s][p] += (double(r * p) * f(r - 1, s, p, k)) / (1.0 * sum);
  return dp[r][s][p];
}
void clr() {
  for (int i = 0; i <= 100; i++) {
    for (int j = 0; j <= 100; j++) {
      for (int k = 0; k <= 100; k++) dp[i][j][k] = -1;
    }
  }
}
int main() {
  int r, s, p;
  cin >> r >> s >> p;
  clr();
  double x = f(r, s, p, 1);
  clr();
  double y = f(r, s, p, 2);
  clr();
  double z = f(r, s, p, 3);
  long long sum = x + y + z;
  printf("%.10f %.10f %.10f\n", x, y, z);
  return 0;
}
