题目链接
说一个不一样的方法,来自Mr_Wu
由 y2−x2=ax+b (a,b,x,y∈N),
变形可得 x2+ax+b=y2.
显然,x2+ax+b 是完全平方数。
此时构造式子 x2+2px+p2 (p∈N),使得 p 是满足 2p≤a 且 p2≤b 的数中最大的。
显然,∀x∈N, x2+2px+p2≤x2+ax+b.
同理,构造式子 x2+2qx+q2 (q∈N),使得 q 是满足 2q≥a 且 q2≥b 的数中最小的。
显然,∀x∈N, x2+2qx+q2≥x2+ax+b.
设 y2=(x+r)2,即 x2+ax+b=(x+r)2.
∵ (x+p)2≤(x+r)2≤(x+q)2
∴p≤r≤q
此时 x=a−2rr2−b.
又因为 x 为整数,所以只需要解出所有 r 对应的 x,判断其是否是整数,如果是,就是合法解。
值得注意的是,如果 x2+ax+b 是完全平方式,输出 inf 即可。