import java.io.BufferedReader;
import java.io.FileReader;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.StringTokenizer;
 
public class bonus_bgp {
    public void solve() throws Exception {
        int n = nextInt();
        int A = nextInt();
        int B = nextInt();
        out.println(solve(A, B, 2, n));
        out.println(solve(A, B, 1, n));
    }
 
    double solve(int A, int B, int C, int n) {
        double[][] D = new double[2][Math.min(B + 1, n + 1)];
        double ans = 0;
        int c = 0;
        D[c][0] = 1;
        for (int a = A; a >= Math.max(0, A - n); --a) {
            Arrays.fill(D[1 - c], 0);
            for (int b = B; b >= Math.max(0, B - n); --b) {
                if (A + B - a - b >= n) continue;
                double val = D[c][B - b];
                double denom = 2.0 * a + b + C;
 
                ans += val * C / denom;
                if (b > 0) {
                    D[c][B - (b - 1)] += val * b / denom;
                }
                if (a > 0) {
                    D[1 - c][B - b] += val * 2 * a / denom;
                }
            }
            c = 1 - c;
        }
        return ans;
    }
 
 
 
    int nextInt() {
        return Integer.parseInt(nextToken());
    }
 
    String nextToken() {
        while (st == null || !st.hasMoreTokens()) {
            try {
                st = new StringTokenizer(br.readLine()) ;
            } catch (Exception e) {
                eof = true;
                return "0";
            }
        }
        return st.nextToken();
    }
 
    public static void main(String[] args) {
        new bonus_bgp().run();
    }
 
    BufferedReader br;
    StringTokenizer st;
    PrintWriter out;
    boolean eof;
 
    public void run() {
        try {
            br = new BufferedReader(new FileReader("bonus.in"));
            out = new PrintWriter("bonus.out");
            solve();
        } catch (Throwable t) {
            t.printStackTrace();
            System.exit(-1);
        } finally {
            out.close();
        }
    }
 
}