Practice · 5 of 5
Debug: Modulo âm
CHALLENGE
Difficulty: intermediate+25 XP
**Bài toán (đã đúng):** tính (a − b) mod 10^9+7 với a, b ≤ 10^18
(không âm). In kết quả trong [0, 10^9+6].
**Code lỗi:** out << (a - b) % p; — (a − b) có thể ÂM và C++ giữ
dấu của số bị chia (a, b không âm nên a − b ≥ −10^18: không tràn;
lỗi duy nhất là dấu modulo).
**Yêu cầu:** sửa thành ((a - b) % p + p) % p (hoặc chuẩn hóa tương
đương) và pass mọi test.
**Input:** a, b (0 ≤ a, b ≤ 10^18).
**Output:** (a − b) mod p.
**Ví dụ:** 3 5 -> 1000000005 (không phải −2).
Press Submit to check your solution.
Back to lesson: Practice: Debugging Problem Set