[题目描述]
给定一个正整数 k,有 k 次询问,每次给定三个正整数 ni, ei, di,求两个正整数 pi, qi,使 ni = pi x qi、ei x di = (pi – 1)(qi – 1) + 1。
[输入格式]
第一行一个正整数 k,表示有 k 次询问。
接下来 k 行,第 i 行三个正整数 ni, di, ei。
[输出格式]
输出 k 行,每行两个正整数 pi, qi 表示答案。
为使输出统一,你应当保证 pi ≤ qi。
如果无解,请输出 NO。
[输入输出样例]
[输入样例1]
10
770 77 5
633 1 211
545 1 499
683 3 227
858 3 257
723 37 13
572 26 11
867 17 17
829 3 263
528 4 109
[输出样例1]
2 385
NO
NO
NO
11 78
3 241
2 286
NO
NO
6 88
[数据范围]
以下记 m = n – e × d + 2。
保证对于 100% 的数据,1 ≤ k ≤ 105,对于任意的 1 ≤ i ≤ k,1 < ni ≤ 1018,1 ≤ ei ≤ di ≤ 1018,1 ≤ m ≤ 109。
[查看题解]
查看题解请点击信息学奥赛(C++普及组)顺序结构题单