func_code_string: #include <bits/stdc++.h>   using namespace std;   const int N = 1e5 + 50;   int n, p, first[N], second[N];   double tmin = 1e9;   pair<double, int> d[N];   bool ok(double x) {     double tp = x * p;     for (int i = 0; i < n; ++i) {       tp -= max(first[i] * x - second[i], 0.0);     }     return tp >= 0;   }   int main() {     cin.sync_with_stdio(0);     cin >> n >> p;     for (int i = 0; i < n; ++i) cin >> first[i] >> second[i];     double lo = 0, hi = 1e20, mid;     if (ok(hi)) {       printf( -1 );     } else {       for (int i = 0; i < 1000; ++i) {         mid = (lo + hi) / 2;         if (ok(mid))           lo = mid;         else           hi = mid;       }       printf( %.6f , mid);     }     return 0;   }   