求根公式做法,没数据调不了,WA7,9,10三个点,全输出NO,求调
#include<bits/stdc++.h>
#define itn int
#define tin int
#define nit int
#define tni int
#define nti int
#define scnaf scanf
#define ptrinf printf
#define icn cin
#define cni cin
#define inc cin
#define nci cin
#define nic cin
#define cuot cout
#define ocut cout
#define fro for
using namespace std;
inline long long read()
{
char ch=getchar();long long s=0,w=1;
while(ch<'0' || ch>'9'){if(ch=='-')w=-1;ch=getchar();}
while(ch>='0' && ch<='9'){s=s*10+ch-48;ch=getchar();}
return s*w;
}
long long q,p,n,d,e,a;
int k;
int main()
{
// freopen(".in","r",stdin);
// freopen(".out","w",stdout);
k=read();
for(int i=1;i<=k;i++)
{
n=read(),d=read(),e=read();
a=d*e;
q=abs(((double)(-(n-a+2))+(double)sqrt(pow(n-a+2,2)-4*n))/(double)(-2));
p=n/q;
if(p*q==n && a==(p-1)*(q-1)+1)
{
printf("%lld %lld\n",min(p,q),max(p,q));
}
else
{
printf("NO\n");
}
}
return 0;
}//q^2-(n-a+2)q+n=0
//解q