The Bad Luck Island is inhabited by three kinds of species: *r* rocks, *s* scissors and *p* papers. At some moments of time two random individuals meet (all pairs of individuals can meet equiprobably), and if they belong to different species, then one individual kills the other one: a rock kills scissors, scissors kill paper, and paper kills a rock. Your task is to determine for each species what is the probability that this species will be the only one to inhabit this island after a long enough period of time.
The single line contains three integers *r*, *s* and *p* (1 ≤ *r*, *s*, *p* ≤ 100) — the original number of individuals in the species of rock, scissors and paper, respectively.
# LUOGU_RID: 128555300
#include <bits/stdc++.h>
using namespace std;
#define ll long long
template <typename T> inline void read(T &x) {
	x = 0; int f = 1; char c = getchar();
	for (; !isdigit(c); c = getchar()) if (c == '-') f = -1;
	for (; isdigit(c); c = getchar()) x = (x << 1) + (x << 3) + (c ^ 48);
	x *= f;
}
const ll N = 1e2 + 5;
double f[N][N][N], ansr, anss, ansp;
ll r, s, p; 
int main() {
	read(r), read(s), read(p);
	f[r][s][p] = 1.0;
	for (int i = r; i >= 0; --i) {
		for (int j = s; j >= 0; --j) {
			for (int k = p; k >= 0; --k) {
				double tot = i * j + i * k + j * k;
				if (i && j) f[i][j - 1][k] += f[i][j][k] * i * j / tot;
				if (i && k) f[i - 1][j][k] += f[i][j][k] * i * k / tot;
				if (k && j) f[i][j][k - 1] += f[i][j][k] * k * j / tot;
				if (i && !j && !k) ansr += f[i][j][k];
				if (!i && j && !k) anss += f[i][j][k];
				if (!i && !j && k) ansp += f[i][j][k];
//				cout << f[i][j][k] << endl;
			}
		}
	}
	printf("%.12lf %.12lf %.12lf", ansr, anss, ansp);
}