В известной школе прошёл урок физкультуры. Как полагается, всех построили в шеренгу и попросили рассчитаться на <<первый–\(k\)-й>>, где \(k > 1\).
Как известно, расчёт на <<первый–\(k\)-й>> происходит следующим образом: первые \(k\) человек имеют номера \(1, 2, 3, \ldots, k\), следующие \(k - 1\) человек имеют номера \(k - 1, k - 2, \ldots, 1\), следующие \(k - 1\) человек имеют номера \(2, 3, \ldots, k\) и т.д. Таким образом, расчёт повторяется через каждые \(2k - 2\) позиции. Примеры расчёта приведены в разделе <<Замечание>>.
Мальчик Вася постоянно всё забывает. Например, он забыл число \(k\), описанное выше. Но он помнит позицию, которую занимал в шеренге, а также какой номер он получил при расчёте. Помогите Васе понять, сколько натуральных чисел \(k\) подходят под данные ограничения.
Обратите внимание, что не существует расчёта для \(k = 1\).
Формат входных данных
Первая строка содержит одно целое число \(n\) (\(2 \leq n \leq 10^9\)) — позиция Васи в ряду в нумерации, начинающейся с \(1\).
Вторая строка содержит одно целое число \(x\) (\(1 \leq x < n\)) — номер, который Вася получил при расчёте.
Формат выходных данных
Выведите единственное целое число — количество различных \(k > 1\), которые подходят под данные ограничения.
Можно доказать, что при данных ограничениях ответ является конечным.
Примечание
В первом примере подходят \(k\) равные \(2, 3, 5, 6\).
Пример расчёта для этих \(k\):
\(2\) |
\(1\) |
\(2\) |
\(1\) |
\(2\) |
\(1\) |
\(2\) |
\(1\) |
\(2\) |
\(1\) |
\(2\) |
\(3\) |
\(1\) |
\(2\) |
\(3\) |
\(2\) |
\(1\) |
\(2\) |
\(3\) |
\(2\) |
\(1\) |
\(2\) |
\(5\) |
\(1\) |
\(2\) |
\(3\) |
\(4\) |
\(5\) |
\(4\) |
\(3\) |
\(2\) |
\(1\) |
\(2\) |
\(6\) |
\(1\) |
\(2\) |
\(3\) |
\(4\) |
\(5\) |
\(6\) |
\(5\) |
\(4\) |
\(3\) |
\(2\) |
Примеры
№ | Входные данные | Выходные данные |
1
|
10
2
|
4
|
2
|
76
4
|
9
|