#include #include using namespace std; long long A, B, C, D; unsigned long long VA, VB, VC, VD; int ty1, ty2; int sgn(long long val) { if (val < 0LL) return -1; if (val > 0LL) return 1; return 0; } int main() { cin >> A >> B >> C >> D; assert(-4000000000LL <= A && A <= 4000000000LL); assert(-4000000000LL <= B && B <= 4000000000LL && B != 0LL); assert(-4000000000LL <= C && C <= 4000000000LL); assert(-4000000000LL <= D && D <= 4000000000LL && D != 0LL); VA = (unsigned long long)abs(A); VB = (unsigned long long)abs(B); VC = (unsigned long long)abs(C); VD = (unsigned long long)abs(D); // A/B の正負を判定 if (sgn(A) == 0) ty1 = 0; else if (sgn(A) + sgn(B) == 0) ty1 = -1; else ty1 = 1; // C/D の正負を判定 if (sgn(C) == 0) ty2 = 0; else if (sgn(C) + sgn(D) == 0) ty2 = -1; else ty2 = 1; // 場合分け if (ty1 < ty2) { cout << "Yes" << endl; } else if (ty1 > ty2) { cout << "No" << endl; } else if (ty1 == 0) { cout << "No" << endl; } else if (ty1 == -1) { if (VA * VD > VB* VC) cout << "Yes" << endl; else cout << "No" << endl; } else if (ty1 == 1) { if (VA * VD < VB * VC) cout << "Yes" << endl; else cout << "No" << endl; } return 0; }