func_code_string: #include <bits/stdc++.h>   using namespace std;   int level[10];   int loyal[10];   int n, A;   double calculate(int cur, int pass, int B, double rate) {     double sum;     if (cur == n) {       if (pass > n / 2) {         return rate;       } else         return rate * (double(A) / (double)(A + B));     }     sum = 0;     sum = sum + calculate(cur + 1, pass, B + level[cur],                           (rate * (double(100 - loyal[cur])) / 100.0));     sum = sum +           calculate(cur + 1, pass + 1, B, (rate * double(loyal[cur])) / 100.0);     return sum;   }   double dfs(int cur, int k) {     if (k == 0) {       return calculate(0, 0, 0, 1.0);     }     if (cur == n) return calculate(0, 0, 0, 1.0);     double a = 0.0;     double temp;     int ori = loyal[cur];     while (loyal[cur] <= 100 && k >= 0) {       temp = dfs(cur + 1, k);       if (temp > a) a = temp;       loyal[cur] = loyal[cur] + 10;       k--;     }     loyal[cur] = ori;     return a;   }   int main() {     int k, i;     scanf( %d%d%d , &n, &k, &A);     for (i = 0; i < n; i++) {       scanf( %d%d , &level[i], &loyal[i]);     }     printf( %.10lf n , dfs(0, k));     return 0;   }   