解密

解密

题目描述

给定一个正整数 k,有 k 次询问,每次给定三个正整数 n_i, e_i, d_i,求两个正整数 p_i, q_i,使 n_i = p_i x q_i,e_i x d_i = (p_i - 1)(q_i - 1) + 1。

输入格式

第一行一个正整数 k,表示有 k 次询问。 接下来 k 行,第 i 行三个正整数 n_i, d_i, e_i。

输出格式

输出 k 行,每行两个正整数 p_i, q_i 表示答案。 为使输出统一,你应当保证 p_i <= q_i。如果无解,请输出 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

输出:

2 385
NO
NO
NO
11 78
3 241
2 286
NO
NO
6 88

提示

以下记 m = n - e x d + 2。 保证对于 100% 的数据,1 <= k <= 10^5,对于任意的 1 <= i <= k,1 <= n_i <= 10^18,1 <= e_i x d_i <= 10^18,1 <= m <= 10^9。

本题为 CSP-J 第二轮真题(2022 年,decode)。

在线判题使用官方样例与补充测试数据,程序输出与答案一致即判对。