Remainder Counting
Một hệ thống an ninh mạng đang phân tích các tín hiệu được mã hóa dựa trên một quy tắc chia lấy phần dư. Trong hệ thống này, khi chia số nguyên $i$ cho số nguyên dương $j$, phần dư nhận được ký hiệu là $i \bmod j$. Hệ thống cần giải mã một cấu trúc khóa có dạng $a \bmod x = b$, trong đó $a$ và $b$ là hai số nguyên không âm đã biết trước, còn $x$ là một biến số. Một số nguyên dương $x$ thỏa mãn $a \bmod x = b$ được gọi là một khóa hợp lệ.
Hệ thống yêu cầu bạn viết một chương trình để tính toán. Dựa vào hai giá trị $a$ và $b$, chương trình của bạn phải xác định xem có bao nhiêu khóa hợp lệ $x$ tồn tại.
Dữ liệu vào
Dòng duy nhất của dữ liệu đầu vào chứa hai số nguyên $a$ và $b$ cách nhau bởi một khoảng trắng ($0 ≤ a, b ≤ 10^9$).
Kết quả
Nếu có vô số khóa hợp lệ cho cấu trúc khóa này, hãy in ra chuỗi ký tự infinity (không bao gồm dấu ngoặc kép). Trong trường hợp ngược lại, hãy in ra số lượng khóa hợp lệ.
Chấm điểm
Subtask 1 (30 points). $a, b ≤ 10^5$
Subtask 2 (70 points). $0 ≤ a, b ≤ 10^9$
Ví dụ
Input
14 2
Output
4
Ghi chú
Trong ví dụ, các khóa hợp lệ cho cấu trúc khóa là 3, 4, 6 và 12 vì $14 \bmod 3 = 2$, $14 \bmod 4 = 2$, $14 \bmod 6 = 2$ và $14 \bmod 12 = 2$.