题目描述
译自 ROIR 2020 Day2 T2. Планировка участка,译者Alpha1022
译者注:由于原题面有点令译者难以理解,所以此处直接抽象题意。
你有四个变量 a,b,c,d 须满足:
- a,b,c,d∈N∗。
 
- a=x,b=x。
 
- a>c,b>d。
 
- a⋅b−c⋅d=n。
 
对于给定的 x,n,请求出 a,b,c,d 有多少种取值方案。
输入格式
第一行,两个整数 n,x。
若 x=0,则表示忽略第二个条件。
输出格式
一行,表示 a,b,c,d 的取值方案数。
3 0
1
5 0
5
5 3
2
提示
【样例 1 解释】
此时只有 a=2,b=2,c=1,d=1 是合法的。
【样例 2 解释】
此时有以下方案是合法的:
- 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。
 
【样例 3 解释】
此时有以下方案是合法的:
- a=2,b=4,c=1,d=3;
 
- a=4,b=2,c=3,d=1。
 
【数据范围】
对于 100% 的数据,1≤n≤3000,0≤x≤3000。
具体数据限制如下表:
| 子任务编号 | 
分值 | 
限制 | 
| 1 | 
11 | 
1≤n≤50,x=0 | 
| 2 | 
10 | 
1≤n≤50 | 
| 3 | 
20 | 
1≤n≤500,x=0 | 
| 4 | 
22 | 
1≤n≤500 | 
| 5 | 
17 | 
1≤n≤3000,x=0 | 
| 6 | 
20 | 
1≤n≤3000 |