#include <bits/stdc++.h>
using namespace std;
const int N = 105;
double dp[N][N][N];
int r, s, p;
int main() {
  while (~scanf("%d%d%d", &r, &s, &p)) {
    memset(dp, 0, sizeof(dp));
    dp[r][s][p] = 1;
    for (int i = r; i >= 0; i--) {
      for (int j = s; j >= 0; j--) {
        for (int k = p; k >= 0; k--) {
          if (!i && !j || !i && !k || !j && !k) continue;
          double ans = dp[i][j][k];
          double tmp = i * j + i * k + j * k;
          if (i) dp[i - 1][j][k] += ans * double(i * k) / tmp;
          if (j) dp[i][j - 1][k] += ans * double(i * j) / tmp;
          if (k) dp[i][j][k - 1] += ans * double(j * k) / tmp;
        }
      }
    }
    double a = 0, b = 0, c = 0;
    for (int i = 1; i <= r; i++) a += dp[i][0][0];
    for (int j = 1; j <= s; j++) b += dp[0][j][0];
    for (int k = 1; k <= p; k++) c += dp[0][0][k];
    printf("%.9lf %.9lf %.9lf\n", a, b, c);
  }
  return 0;
}
