func_code_string: #include <bits/stdc++.h>   #pragma GCC optimize(2)   using namespace std;   const int N = 5005;   int n, m;   double ans, F[N][N];   bool vis[N][N];   double cal(double b, double x, double y, double ps) {     return (1 - b) * ps * x + min(1 - ps, ps * b + (1 - ps) * (1 - y));   }   double f(int a, int b, int fl) {     if (!b) return 1;     if (!a) return 1 / (double)(b + 1);     if (vis[a][b]) return F[a][b];     double res = 1 / (double)(b + 1);     vis[a][b] = 1;     double y = f(b, a - 1, 0), x = 1 - f(b - 1, a, 0);     return F[a][b] =                max(res, cal(1 / (double)(b + 1), x, y,                             y * (double)(b + 1) / (1 + y * (double)(b + 1))));   }   int main() {     int i, j;     cin >> n >> m, ans = f(n, m, 0);     printf( %.9lf %.9lf , ans, 1 - ans);     return 0;   }   