#include<bits/stdc++.h>
using namespace std;
int t,m;
signed main(){
cin>>t>>m;while(t--){
int a,b,c;scanf("%d %d %d",&a,&b,&c);
int cnt=b*b-4*a*c;if(cnt<0){cout<<"NO\n";continue;}
int scnt=sqrt(cnt);if(scnt*scnt==cnt){
if(a>0){
int cntt=max(-b+scnt,-b-scnt);if(cntt){
if(abs(cntt)%(2*a)){
int x=2*a,gcd=__gcd(abs(cntt),abs(x));x/=gcd;cntt/=gcd;
if(x<0)cout<<-cntt<<"/"<<-x;
else cout<<cntt<<"/"<<x;
}else cout<<cntt/2/a;
}else cout<<0;
}else{
int cntt=min(-b+scnt,-b-scnt);if(cntt){
if(abs(cntt)%abs(2*a)){
int x=2*a;cntt=cntt;int gcd=__gcd(abs(x),abs(cntt));
x/=gcd;cntt/=gcd;if(x>0)cout<<cntt<<"/"<<x;
else cout<<-cntt<<"/"<<-x;
}else cout<<cntt/2/a;
}else cout<<0;
}
}else{
int q1=-b,q2;for(int i=1;i<=cnt;i++){
if(cnt%i==0){
int x=cnt/i;x=sqrt(x);if(x*x==cnt/i){
q2=x;break;
}
}
}if(cnt<0)q2=-q2;int r=cnt/q2/q2;if(q1!=0){
if(q1%(2*a)){
int x=2*a,gcd=__gcd(x,q1);x/=gcd;q1/=gcd;
if(x<0)cout<<-q1<<"/"<<-x<<"+";
else cout<<q1<<"/"<<x<<"+";
}else cout<<q1/2/a<<"+";
}if(abs(q2)==abs(2*a))cout<<"sqrt("<<r<<")";
else if(q2%(2*a)==0)cout<<abs(q2/2/a)<<"*"<<"sqrt("<<r<<")";//为什么不求绝对值会错
else if((2*a)%q2==0)cout<<"sqrt("<<r<<")/"<<abs(2*a/q2);//为什么不求绝对值会错
else{int x=2*a,gcd=__gcd(x,q2);cout<<abs(q2/gcd)<<"*sqrt("<<r<<")/"<<abs(x/gcd);}//为什么要求绝对值会错
}cout<<endl;
}return 0;
}
为什么不求绝对值会错?