#include <bits/stdc++.h>
using namespace std;
void print(int k1, int k2, int k3, bool flag) {
int kk1 = 1;
if (flag) {
for (int i = 1; i <= k1 / i; i++) {
if (k1 % (i * i) == 0) {
kk1 *= i;
k1 /= (i * i);
}
}
int kt1 = kk1, kt2 = k2, kt3 = k3, k13 = k3,k23 = k3;
if (kt1 == 0) kt1 = 1e9;
if (kt3 == 0) kt3 = 1e9;
// for (int i = -min({abs(kt1), abs(kt2), abs(kt3)}); i <= min({abs(kt1), abs(kt2), abs(kt3)}); i++) {
// if (i == 0) continue;
// if (kk1 % i == 0 && k2 % i == 0 && k3 % i == 0) {
// kk1 /= i;
// k2 /= i;
// k3 /= i;
// }
// }
for (int i = -min(abs(k2), abs(k13)); i <= min(abs(k2), abs(k13)); i++) {
if (i == 0) continue;
if (k2 % i == 0 && k3 % i == 0) {
k2 /= i;
k13 /= i;
}
}
for (int i = -min(abs(kk1), abs(k23)); i <= min(abs(kk1), abs(k23)); i++) {
if (i == 0) continue;
if (kk1 % i == 0 && k23 % i == 0) {
kk1 /= i;
k23 /= i;
}
}
if (k13 < 0) {
k13 *= -1;
k2 *= -1;
}
if (k23 < 0) {
k23 *= -1;
kk1 *= -1;
}
if (k2 != 0) {
if (k13 == 1) {
cout << k2;
} else {
cout << k2 << '/' << k13;
}
}
if (kk1 != -1 && k1 != 0 && k2 != 0) {
cout << '+';
}
if (k1 != 0) {
if (kk1 == -1) {
cout << '-';
}
else if (kk1 != 1) {
cout << kk1 << '*';
}
// if (k1 != 1)
cout << "sqrt(" << k1 << ')';
if (k23 != 1) cout << '/' << k23;
}
} else {
int kk = k1 + k2;
if (kk == 0) kk = 1e9;
for (int i = -min(abs(kk), abs(k3)); i <= min(abs(kk), abs(k3)); i++) {
if (i == 0) continue;
if (kk % i == 0 && k3 % i == 0) {
kk /= i;
k3 /= i;
}
}
if (k3 < 0) k3 *= -1, kk *= -1;
cout << kk;
if (k3 != 1) cout << "/" << k3;
}
puts("");
return;
}
void solve() {
int a, b, c;
cin >> a >> b >> c;
int dt = b * b - 4 * a * c;
if (dt < 0) {
cout << "NO\n";
return;
}
bool flag = 0;
int k1= dt, k2, k3;
if (sqrt(dt) == floor(sqrt(dt))) {
k1 = sqrt(dt);
} else {
flag = 1;
}
k2 = -b;
k3 = 2 * a;
print(k1, k2, k3, flag);
// print(k1, k2, k3, flag, -1);
// k2 + k1 / k3
return;
}
int main() {
// freopen("uqe.in", "r", stdin);
// freopen("uqe.out", "w", stdout);
int t, m;
cin >> t >> m;
while (t--) {
solve();
}
// fclose(stdin);
// fclose(stdout);
return 0;
}
0分