#6926. CSP-J 2022 解密(decode) T2
CSP-J 2022 解密(decode) T2
解密(decode)
题目描述
给定一个正整数 k,有 k 次询问。
每次给定三个正整数 nᵢ、eᵢ、dᵢ,求两个正整数 pᵢ、qᵢ,使得:
- nᵢ = pᵢ × qᵢ;
- eᵢ × dᵢ = (pᵢ - 1)(qᵢ - 1) + 1。
输入格式
从文件 decode.in 中读入数据。
第一行包含一个正整数 k,表示有 k 次询问。
接下来 k 行,第 i 行包含三个正整数 nᵢ、dᵢ、eᵢ。
输出格式
输出到文件 decode.out 中。
输出 k 行,每行两个正整数 pᵢ、qᵢ,表示答案。
为使输出统一,你应当保证 pᵢ ≤ qᵢ。
如果无解,请输出 NO。
样例 1
输入
10
770 77 5
633 12 11
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
样例 2
见选手目录下的 decode/decode2.in 与 decode/decode2.ans。
样例 3
见选手目录下的 decode/decode3.in 与 decode/decode3.ans。
样例 4
见选手目录下的 decode/decode4.in 与 decode/decode4.ans。
数据范围
以下记:
m = n - e × d + 2
对于所有测试数据,保证:
- 1 ≤ k ≤ 10⁵;
- 对于任意的 1 ≤ i ≤ k,均有:
- 1 ≤ nᵢ ≤ 10¹⁸;
- 1 ≤ eᵢ × dᵢ ≤ 10¹⁸;
- 1 ≤ m ≤ 10⁹。
| 测试点编号 | k ≤ | n ≤ | m ≤ | 特殊性质 |
|---|---|---|---|---|
| 1 | 10³ | 10³ | 保证有解 | |
| 2 | 无 | |||
| 3 | 10⁹ | 6 × 10⁴ | 保证有解 | |
| 4 | 无 | |||
| 5 | 10⁹ | 保证有解 | ||
| 6 | 无 | |||
| 7 | 10⁵ | 10¹⁸ | 保证若有解,则 p = q | |
| 8 | 保证有解 | |||
| 9、10 | 无 | |||
相关
在以下作业中: