救命
查看原帖
救命
1016748
Wangyuqi2010楼主2024/10/11 13:41
#include<iostream>
#include<cmath>
using namespace std;
bool is(int num) {
	if(num==1||num==0) return 1;
	for(long long i=1; i*i<=num; i++) {
		if(i*i==num) return 1;
	}
	return 0;
}
int main() {
	long long k;
	cin>>k;
	while(k--) {
		long long n,e,d;
		cin>>n>>d>>e;
		long long m=n-e*d+2;
		long long death=m*m-4*n;
		if(death<0||!is(death)) {
			cout<<"NO"<<endl;
			continue;
		}
		death=sqrt(death);
		if((m+death)%2==1||(m-death)<=0) {
			cout<<"NO"<<endl;
			continue;
		}else {
			long long p=(m-death)/2;
			long long q=(m+death)/2;
			cout<<p<<' '<<q<<endl;
		}
	}
	return 0;
}
2024/10/11 13:41
加载中...