ホーム AtCoder ABC 237 A — Not Overflow
記事
キャンセル

AtCoder ABC 237 A — Not Overflow

問題: AtCoder ABC 237 A — Not Overflow English · 한국어 · [日本語]

入力値は32ビット符号付き整数の範囲を超える可能性があるため、longとして読み込みます。32ビット符号付き整数の範囲はInteger.MIN_VALUE(-2^31)からInteger.MAX_VALUE(2^31 - 1)までで、両端を含みます。longで読み込んだ値を両方の境界と比較し、この範囲内ならYes、そうでなければNoを出力します。端点を含む比較にすることで、境界値を正しく受け入れ、そのすぐ外側の値を拒否できます。

Java

1
2
3
4
5
6
7
8
9
10
11
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
        long value = Long.parseLong(input.readLine().trim());
        System.out.println(Integer.MIN_VALUE <= value && value <= Integer.MAX_VALUE ? "Yes" : "No");
    }
}
この記事は著者により CC BY 4.0 ライセンスで公開されています。