#CSPJ202202. 解密

解密

题目描述

给定一个正整数kk,有kk次询问,每次给定三个正整数ni,ei,din_i,e_i,d_i,求两个正整数pi,qip_i,q_i,使ni=piqin_i=p_i*q_ieidi=(pi1)(qi1)+1e_i*d_i=(p_i-1)(q_i-1)+1

输入格式

第一行一个正整数kk,表示有kk次询问。

接下来kk行,第ii行三个正整数ni,di,ein_i,d_i,e_i

输出格式

输出kk行,每行两个正整数pi,qip_i,q_i表示答案。

为使输出统一,你应当保证piqip_i\leq q_i

如果无解,请输出NO

输入输出样例

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
2 385
NO
NO
NO
11 78
3 241
2 286
NO
NO
6 88

数据规模与约定

以下记m=ned+2m=n-e*d+2

保证对于100%100\%的数据,1k1051\leq k\leq10^5,对于任意的1ik1\leq i\leq k1ni10181\leq n_i\leq10^{18}1eidi10181\leq e_i*d_i\leq10^{18}1m1091\leq m\leq10^9

测试点编号 kk\leq nn\leq mm\leq 特殊性质
1 10310^3 10310^3 保证有解
2
3 10910^9 61046*10^4 保证有解
4
5 10910^9 保证有解
6
7 10510^5 101810^{18} 若保证有解则p=qp=q
8 保证有解
9
10