#include <iomanip>
#include <iostream>
using namespace std;
double dp[100][100][100];
double rec(int i, int j, int k) {
  if (i == 100 || j == 100 || k == 100) return 0.0;
  if (dp[i][j][k] > 0.0) return dp[i][j][k];
  double n = double(i + j + k);
  return dp[i][j][k] = ((rec(i + 1, j, k)) * i + (rec(i, j + 1, k)) * j + (rec(i, j, k + 1)) * k) / n + 1;
}
int main() {
  int a, b, c;
  cin >> a >> b >> c;
  cout << fixed << setprecision(10) << rec(a, b, c);
  return 0;
}
#include<bits/stdc++.h>
#include<iostream>
#include<set>
#include<map>
#include<iterator>
#define ll              long long
#define lli             long long int
#define pb              push_back
#define RIP(i,n)        for(int i=0; i<n; i++)
#define RIP1(i,n)       for(int i=n-1; i>=0; i--)
#define FOR(i,a,b)      for(int i=a;i<(b); i++)
#define FOR1(i,a,b)     for(int i=a; i>=(b); i--)
#define sc(a)           scanf("%lld",&a)
#define SC(a)           scanf("%d",&a)
#define cin(a)          cin >> a
#define cout(a)         cout << a
#define pi              acos(-1)
#define pr(a)           printf("%lld\n",a)
#define PR(a)           printf("%lld ",a)
#define s(a,b)          sort(a,b)
#define sz(x)           (int)(x).size()
#define nl              '\n'
#define Max             110
using namespace std;
void c_p_c()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    /*#ifdef ONLINE_JUDGE
        freopen("input.txt","r",stdin);
        freopen("output.txt","w",stdout);
    #endif*/
}
double dp[Max][Max][Max];
double solve(int a,int b,int c)
{
    double ret = dp[a][b][c];
    if(ret>0)
    {
        return ret;
    }
    if(a>=100 || b>=100 || c>=100)
    {
        return 0;
    }

    ret = 0;
    double sum = a+b+c;
    ret = a*(solve(a+1,b,c)+1)/sum + b*(solve(a,b+1,c)+1)/sum + c*(solve(a,b,c+1)+1)/sum;
    dp[a][b][c]=ret;
    return ret;
}
int main()
{
    //c_p_c();
    int a,b,c;
    SC(a);SC(b);SC(c);
    /*double sum = a+b+c;
    double p = (100-a)*(a/sum);
    double q = (100-b)*(b/sum);
    double r = (100-c)*(c/sum);
    double ans = p+q+r;*/
    //memset(dp,255,sizeof(dp));
    /*RIP(i,Max)
    {
        RIP(j,Max)
        {
            RIP(k,Max)
            {
                dp[i][j][k]=255;
            }
        }
    }*/
    double ans = solve(a,b,c);
    cout << fixed << setprecision(9) << ans << nl;
}
