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

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

AtCoder ABC 188 A - Three-Point Shot (8Q, 灰色, 100 点)

3-point shot で逆転できるという条件を、上手に数式に落とし込もう!

問題概要

バスケの試合で両チームの得点は  X, Y 点である ( X \neq Y である)。

どちらかのチームに 3 点追加されたときに、逆転が起こるかどうかを判定せよ。

解法

 X, Y のどちらが大きいかが分からないが、いずれにしても、次のように言い換えられる。


得点差、つまり  |X - Y| 3 未満であれば "Yes" である。

そうでなければ "No" である。


 |X - Y| は、 X Y の差を表す数式である。これは C++ では絶対値関数 abs() を用いて abs(X - Y) と表せる。

まとめると、abs(X - Y) < 3 であるかどうかを判定すればよい。

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

int main() {
    int X, Y;
    cin >> X >> Y;
    if (abs(X - Y) < 3)
        cout << "Yes" << endl;
    else
        cout << "No" << endl;
}