func_code_string: #include <bits/stdc++.h>   using namespace std;   long long l, r, u, d;   long long n, x, y, c;   long long sqr(long long x) { return x * x; }   long long tri(long long x) { return (x + 1) * x / 2; }   bool solve(long long t) {     long long sum = t * t + (t + 1) * (t + 1);     if (t > l) sum -= sqr(t - l);     if (t > r) sum -= sqr(t - r);     if (t > u) sum -= sqr(t - u);     if (t > d) sum -= sqr(t - d);     if (t > l + d) sum += tri(t - (l + d) - 1);     if (t > l + u) sum += tri(t - (l + u) - 1);     if (t > r + d) sum += tri(t - (r + d) - 1);     if (t > r + u) sum += tri(t - (r + u) - 1);     if (sum >= c) return true;     return false;   }   int main() {     scanf( %I64d%I64d%I64d%I64d , &n, &x, &y, &c);     l = x - 1;     r = n - x;     u = y - 1;     d = n - y;     long long low = 0, high = 2 * n, mid;     while (low <= high) {       mid = (low + high) / 2;       if (solve(mid))         high = mid - 1;       else         low = mid + 1;     }     printf( %I64d n , low);     return 0;   }   