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

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

AtCoder ABC 209 A - Counting (灰色, 100 点)

とても教育的な問題!

問題概要

整数  A, B が与えられる。

 A 以上  B 以下の整数は何個あるか?

解法

まず、 A \gt B の場合は、 A 以上  B 以下の整数は存在しないことに注意しよう。この場合は 0 個と答えれば良い。

それでは、 A \le B としよう。この場合は、 A 以上  B 以下の整数の個数は、


 B - A + 1


となる。 B - A ではないことに注意しよう。これはもう憶えてしまっても良いくらいだと思う。とても大事な考え方だ!

具体例をあげると、たとえば  A = 3 B = 7 のとき、3 以上 7 以下の整数は

3, 4, 5, 6, 7

の 5 個ある。7 - 3 + 1 = 5 より、確かに合っている。

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

int main() {
    int A, B;
    cin >> A >> B;
    
    if (A <= B)
        cout << B - A + 1 << endl;
    else
        cout << 0 << endl;
}