70pts求助
查看原帖
70pts求助
723198
AAA404楼主2022/11/6 18:31

求根公式做法,没数据调不了,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 

2022/11/6 18:31
加载中...