func_code_string: #include <bits/stdc++.h>   using namespace std;   int n, T;   double p[5555];   int t[5555];   double f[5555][5555];   int main() {     cin >> n >> T;     for (int i = 0; i < n; i++) {       cin >> p[i] >> t[i];       p[i] /= 100;     }     for (int x = 1; x < t[n - 1]; x++)       f[n - 1][x] = f[n - 1][x - 1] + p[n - 1] * pow(1 - p[n - 1], x - 1);     f[n - 1][t[n - 1]] = f[n - 1][t[n - 1] - 1] + pow(1 - p[n - 1], t[n - 1] - 1);     for (int x = t[n - 1] + 1; x <= T; x++) f[n - 1][x] = 1;     for (int i = n - 2; i >= 0; i--) {       double s = 0;       for (int x = 1; x <= T; x++) {         s *= (1 - p[i]);         s += (f[i + 1][x - 1] + 1) * p[i];         if (x >= t[i])           s -= (f[i + 1][x - t[i]] + 1) * p[i] * pow(1 - p[i], t[i] - 1);         if (x >= t[i])           f[i][x] = s + (f[i + 1][x - t[i]] + 1) * pow(1 - p[i], t[i] - 1);         else           f[i][x] = s;       }     }     cout << setprecision(15) << f[0][T] <<   n ;     return 0;   }   