#include<iostream>
#include<cmath>
using namespace std;
typedef long long ll;
ll k,n,m,e,d,p,q;
inline ll read(){
int x=0,f=1;
char c=getchar();
while(c<'0' || c>'9'){if(c=='-') f=-1;c=getchar();}
while(c>='0' && c<='9') {x=x*10+c-48;c=getchar();}
return x;
}
int main()
{
//freopen("decode.in","r",stdin);
//freopen("decode.out","w",stdout);
k=read();
while(k--)
{
n=read(),e=read(),d=read();
m=n-e*d+2;
if(m*m-4*n<0){
puts("NO");
continue;
}
else{
ll sqr=sqrt(m*m-4*n);
if(sqr*sqr==m*m-4*n){
if((m+sqr)%2==0)q=(m+sqr)/2;
else {puts("NO");continue;}
p=(m-sqr)/2;
if(p<0||q<0){
puts("NO");
continue;
}
printf("%lld %lld\n",p,q);
}
else puts("NO");
}
//m=n=e=d=p=q=0;
}
return 0;
}
以上为错误代码 错误原因:快读里x设的int 谨以此警示后人