还是遍历,不过可以减少一半多的遍历次数,需要遍历 (p的开方取floor+1)--(p/2取floor); 需要先来个证明,因为给定P和A,假如存在X,那么X的个数只会是两个; X1*X1-X2*X2==N*P成立; 借此可以证明,X1+X2==P,即这两个答案互补的; 有了这个结论,再考虑当A是完全平方数的时候,我们可以直接得到答案咯
Copyright © 2005-2025 51CTO.COM 版权所有 京ICP证060544号