#include<bits/stdc++.h>
using namespace std;

int main(){
    double X , Y , Z ; 
    cin >> X >> Y >> Z ; 

    int max_s = 0 ; 
    for(int i = 0 ; i < 1000000  ; i++){
        double t = Y/X ; 
        double s = (double)i/Z ; 
        //cout <<fixed << setprecision(10) <<  s << endl;
        if( s < t) max_s = max(max_s , i) ; 
        else{
            break ; 
        }
    }

    cout << max_s << endl;
}
#include<bits/stdc++.h>
#define SZ(X) ((int)(X).size())
#define MP make_pair
#define PB emplace_back
using namespace std;
const int SIZE = 101;
double dp[SIZE][SIZE][SIZE];
bool visited[SIZE][SIZE][SIZE];
double f(int x, int y, int z) {
    if(visited[x][y][z]) { return dp[x][y][z]; }
    if(x == 100 || y == 100 || z == 100) { return 0; }
    visited[x][y][z] = true;
    dp[x][y][z] = 1 + 1. * x / (x + y + z) * f(x + 1 ,y , z) + 1. * y / (x + y + z) * f(x, y + 1, z) + 1. * z / (x + y + z) * f(x, y, z + 1);
    return dp[x][y][z];
}
void solve() {
    int A, B, C;
    cin >> A >> B >> C;
    printf("%.12f\n",f(A, B, C));

}
int main() {
    solve();
    return 0;
}
