Планировка участка

아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

Учёные планируют участок для испытательного полигона. Участок должен иметь форму прямоугольника a × b, а полигон должен иметь форму прямоугольника c × d. С точными значениями чисел a, b, c и d ученые пока не определились, однако известно следующее:

  • Длины сторон a, b, c, d должны быть натуральными числами и выражаться в километрах.
  • Для безопасности эксперимента длина и ширина участка должны отличаться от значения x, то есть должны выполняться неравенства a ≠ x, b ≠ x.
  • Участок будет огражден забором, а полигон должен полностью помещаться внутри участка, то есть должны выполняться следующие условия: a > c, b > d.
  • Площадь участка, не занятого полигоном, должна быть ровно n квадратных километров, то есть должно выполняться следующее условие: a · b − c · d = n.

Учёные хотят понять, сколько у них способов выбрать подходящие значения a, b, c и d. Требуется написать программу, которая по заданным n и x определяет количество способов выбрать числа a, b, c и d так, чтобы все описанные условия выполнялись.

입력

В первой строке ввода содержатся два числа: n — площадь свободного участка без полигона (1 6 n 6 3000) и x — запрещенная длина стороны участка (0 ≤ x ≤ 3000).

Значение x = 0 означает, что ограничений на длины сторон нет (так как длины сторон должны быть натуральными числами, и, следовательно, больше 0).

출력

В единственной строке выведите количество способов выбрать числа a, b, c и d так, что все описанные условия выполняются.

힌트

В первом тестовом примере подходят только a = 2, b = 2, c = 1, d = 1.

Во втором тестовом примере подходят следующие ответы:

  • a = 2, b = 3, c = 1, d = 1;
  • a = 2, b = 4, c = 1, d = 3;
  • a = 3, b = 2, c = 1, d = 1;
  • a = 3, b = 3, c = 2, d = 2;
  • a = 4, b = 2, c = 3, d = 1.

В третьем тестовом примере подходят следующие ответы:

  • a = 2, b = 4, c = 1, d = 3; • a = 4, b = 2, c = 3, d = 1.

В остальных ответах из предыдущего теста либо a, либо b равняется 3