#include <bits/stdc++.h>   using namespace std;   const int MX = (int)1e6 + 17;   const int MOD = (int)1e9 + 7;   const long long oo = (long long)1e18 + 7;   const int INF = (int)999999999;   const int N = (int)1e5 + 17;   const int di[4] = {-1, 0, 1, 0};   const int dj[4] = {0, 1, 0, -1};   inline long long IN() {     long long x = 0, ch = getchar(), f = 1;     while (!isdigit(ch) && (ch !=  - ) && (ch != EOF)) ch = getchar();     if (ch ==  - ) {       f = -1;       ch = getchar();     }     while (isdigit(ch)) {       x = (x << 1) + (x << 3) + ch -  0 ;       ch = getchar();     }     return x * f;   }   inline void OUT(long long x) {     if (x < 0) putchar( - ), x = -x;     if (x >= 10)       OUT(x / 10), putchar(x % 10 +  0 );     else       putchar(x +  0 );   }   double d, h, v, e, ans;   int main() {     cin >> d >> h >> v >> e;     ans = e - ((4 * v) /                (3.14159265358979323846264338327950288419716939937510 * d * d));     h = -h;     if (ans > -1e4 && ans < 0)       cout <<  YES  << endl << fixed << setprecision(10) << (h / ans);     else       cout <<  NO ;     return 0;   }   