Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [An toàn thông tin] Phát hiện tràn số nguyên

    Phát hiện tràn số nguyên (integer overflow)

    Khái niệm. Tràn số nguyên xảy ra khi kết quả phép tính vượt quá phạm vi kiểu dữ liệu, gây ra giá trị sai — nguồn gốc của nhiều lỗ hổng (ví dụ tính sai kích thước cấp phát). Với số nguyên không dấu N bit, giá trị lớn nhất là 2^N − 1. Bài này phát hiện tràn bằng cách so sánh, không khai thác.

    Cho N, a, b: nếu a + b > 2^N − 1 thì tràn.

    Ví dụ. N=8, a=200, b=100 → 300 > 255 → OVERFLOW.

    • Định dạng đầu vào:

      Ba số nguyên: N (số bit), a, b.

    • Ràng buộc đầu vào:

      1 ≤ N ≤ 64, 0 ≤ a, b < 2^N.

    • Định dạng đầu ra:

      OVERFLOW nếu tràn; ngược lại in a+b.

    Ví dụ:

    Đầu vào:

    8
    200
    100
    

    Đầu ra:

    OVERFLOW

    Giải thích:

    Số 8 bit không dấu tối đa 255; 200+100=300 > 255 → OVERFLOW.

    Đang tải editor...