Олимпиадный тренинг

Задача . D. Веселье


Подсчёт — это весело!
— satyam343

Даны два целых числа \(n\) и \(x\), найдите количество троек (\(a,b,c\)) положительных целых чисел, таких, что \(ab + ac + bc \le n\) и \(a + b + c \le x\).

Обратите внимание, что порядок имеет значение (например, (\(1, 1, 2\)) и (\(1, 2, 1\)) считаются разными) и \(a\), \(b\), \(c\) должны быть строго больше \(0\).

Входные данные

Первая строка содержит одно целое число \(t\) (\(1 \leq t \leq 10^4\))  — количество наборов входных данных.

Каждый набор содержит два целых числа \(n\) и \(x\) (\(1 \leq n,x \leq 10^6\)).

Гарантируется, что сумма \(n\) по всем наборам входных данных не превышает \(10^6\) и сумма \(x\) по всем наборам входных данных не превышает \(10^6\).

Выходные данные

Выведите одно целое число — количество троек (\(a,b,c\)) положительных целых чисел, таких, что \(ab + ac + bc \le n\) и \(a + b + c \le x\).

Примечание

В первом примере подходящие тройки это (\(1, 1, 1\)), (\(1, 1, 2\)), (\(1, 2, 1\)) и (\(2, 1, 1\)).

Во втором примере подходящие тройки это (\(1, 1, 1\)), (\(1, 1, 2\)), (\(1, 1, 3\)), (\(1, 2, 1\)), (\(1, 2, 2\)), (\(1, 3, 1\)), (\(2, 1, 1\)), (\(2, 1, 2\)), (\(2, 2, 1\)) и (\(3, 1, 1\)).


Примеры
Входные данныеВыходные данные
1 4
7 4
10 5
7 1000
900000 400000
4
10
7
1768016938

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w643
Комментарий учителя