C1079 - 解密【CSP-J 2022 入门级 T2】

题目描述

给定一个正整数 $k$,有 $k$ 次询问,每次给定三个正整数 $n_i, e_i, d_i$,求两个正整数 $p_i, q_i$,使 $n_i = p_i \times q_i$、$e_i \times 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 \leq q_i$。

如果无解,请输出 NO

输入输出样例 #1

输入 #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

说明/提示

【样例 #2】

见附件中的 decode/decode2.indecode/decode2.ans

【样例 #3】

见附件中的 decode/decode3.indecode/decode3.ans

【样例 #4】

见附件中的 decode/decode4.indecode/decode4.ans

【数据范围】

以下记 $m = n - e \times d + 2$。

保证对于 $100%$ 的数据,$1 \leq k \leq {10}^5$,对于任意的 $1 \leq i \leq k$,$1 \leq n_i \leq {10}^{18}$,$1 \leq e_i \times d_i \leq {10}^{18}$ ,$1 \leq m \leq {10}^9$。

测试点编号 $k \leq$ $n \leq$ $m \leq$ 特殊性质
$1$ $10^3$ $10^3$ $10^3$ 保证有解
$2$ $10^3$ $10^3$ $10^3$
$3$ $10^3$ $10^9$ $6\times 10^4$ 保证有解
$4$ $10^3$ $10^9$ $6\times 10^4$
$5$ $10^3$ $10^9$ $10^9$ 保证有解
$6$ $10^3$ $10^9$ $10^9$
$7$ $10^5$ $10^{18}$ $10^9$ 保证若有解则 $p=q$
$8$ $10^5$ $10^{18}$ $10^9$ 保证有解
$9$ $10^5$ $10^{18}$ $10^9$
$10$ $10^5$ $10^{18}$ $10^9$

附件下载

decode.zip

测试点数目

共10个测试点,每个测试点10分

时间与内存限制

每个测试点时间:1000ms(1.0s),内存:256MiB

输入输出模式

本OJ支持两种输入输出模式

1. 标准输入输出模式:
直接从标准输入和标准输出读写数据,不需要使用freopen进行文件输入输出重定向
2. 文件输入输出模式(国内信奥赛输入输出模式):
从文件中读写数据,需要使用freopen进行输入输出重定向
本题输入文件名为:decode.in,输出文件名为:decode.out