比赛 CSP2022普及组 评测结果 AAWWWWAWWW
题目名称 解密 最终得分 30
用户昵称 崔宸铭 运行时间 1.147 s
代码语言 C++ 内存使用 0.00 MiB
提交时间 2022-10-29 17:25:00
显示代码纯文本
#include <bits/stdc++.h>
using namespace std;
int k;
long long n,e,d;
long long p,q;
int m;
int main(){
	freopen("csp2022pj_decode.in","r",stdin);
	freopen("csp2022pj_decode.out","w",stdout);
	cin>>k;
	while(k--){
		cin>>n>>e>>d;
		m=n-e*d+2;
		int derta=pow(m,2)-4*n;
//		cout<<m<<endl;
//		cout<<derta<<endl;
//		cout<<sqrt(derta)<<endl;
//		cout<<m-sqrt(derta)<<endl;
//		cout<<m+sqrt(derta)<<endl;
//		cout<<(m-sqrt(derta))/2<<endl;
//		cout<<(m+sqrt(derta))/2<<endl;
		if(derta<0){
			cout<<"NO";
			continue;
		}
		int der=sqrt(derta);
		if(pow(der,2)!=derta){
			cout<<"NO";
			continue;
		}
		if(m-der<=0){
			cout<<"NO";
			continue;
		}
		if(((int)(m-der))%2!=0||((int)(m+der))%2!=0){
			cout<<"NO";
			continue;
		}
		p=(m-der)/2;
		q=(m+der)/2;
		cout<<p<<" "<<q<<endl;
	}
	
	return 0;
}