#Z0008. 数数真有趣

数数真有趣

Counting is Fun!


给定两个整数 nnxx,请找出所有正整数三元组 (a,b,c)(a,b,c) 的数量,使得:

$$ab + ac + bc \le n \quad \text{并且} \quad a + b + c \le x. $$

其中,顺序不同的三元组视为不同(例如 (1,1,2)(1,1,2)(1,2,1)(1,2,1) 是不同的),并且 a,b,ca, b, c 都必须严格大于 00


输入

  • 第一行包含一个整数 tt1t1041 \le t \le 10^4),表示测试用例的数量。
  • 对于每个测试用例,包含两个整数 nnxx1n,x1061 \le n, x \le 10^6)。

保证所有测试用例中 nn 的总和不超过 10610^6,且 xx 的总和也不超过 10610^6


输出

对于每个测试用例,输出一个整数,表示满足 ab+ac+bcnab + ac + bc \le na+b+cxa + b + c \le x 的所有正整数三元组 (a,b,c)(a,b,c) 的数量。

输入输出样例 #1

输入 #1

4
7 4
10 5
7 1000
900000 400000

输出 #1

4
10
7
1768016938

说明

  • 在第一个测试用例中,满足条件的三元组为 (1,1,1)(1,1,1)(1,1,2)(1,1,2)(1,2,1)(1,2,1)(2,1,1)(2,1,1)。因此答案是 44
  • 在第二个测试用例中,满足条件的三元组为 (1,1,1)(1,1,1)(1,1,2)(1,1,2)(1,1,3)(1,1,3)(1,2,1)(1,2,1)(1,2,2)(1,2,2)(1,3,1)(1,3,1)(2,1,1)(2,1,1)(2,1,2)(2,1,2)(2,2,1)(2,2,1)(3,1,1)(3,1,1)。因此答案是 1010