けんちょんの競プロ精進記録

競プロの精進記録や小ネタを書いていきます

AtCoder ABC 352 A - AtCoder Line (7Q, 灰色, 100 点)

算数系の問題!

問題概要

解法

入力の中に  N が含まれるが、これは結局使わない。こういう変数に惑わされないようにしよう。次の 2 つの場合に分けて考える。

  •  X \lt Y のとき (上りのとき)
  •  X \gt Y のとき (下りのとき)

前者の場合は、"Yes" となる条件は  X \lt Z \lt Y と書ける。後者の場合は、"Yes" となる条件は  X \gt Z \gt Y と書ける。

以上をまとめると、"Yes" であるための条件は次のように書ける。


 X \lt Z \lt Y または  X \gt Z \gt Y


コード

#include <bits/stdc++.h>
using namespace std;

int main() {
    int N, X, Y, Z;
    cin >> N >> X >> Y >> Z;
    if (X > Z && Z > Y)
        cout << "Yes" << endl;
    else if (X < Z && Z < Y)
        cout << "Yes" << endl;
    else
        cout << "No" << endl;
}