求大佬帮助为什么只有20分啊。注释部分是第一遍的暴力。
#include<bits/stdc++.h>
using namespace std;
int n,e,d;
void qp(int cnt,int n){
int o=sqrt((cnt*cnt)-(4*n));
int p=(cnt-o)/2,q=(cnt+o)/2;
if(p*q==n&&e*d==(p-1)*(q-1)+1&&p&&q){cout<<min(p,q)<<" "<<max(q,p)<<"\n";return;}
else{cout<<"NO"<<"\n";return;}
}
int main(){
int k;
cin>>k;
while(k--){
cin>>n>>e>>d;
int cnt=n-(e*d)+2;
qp(cnt,n);
}
return 0;
}