CF1549A.Gregor and Cryptography

传统题 时间 2000 ms 内存 256 MiB 3 尝试 1 已通过 1 标签

Gregor and Cryptography

题目描述

Gregor 正在学习 RSA 加密,虽然他还不明白 RSA 的工作原理,但他现在对质数及其因数分解产生了浓厚的兴趣。

Gregor 最喜欢的质数是 PP。Gregor 想要找到 PP 的两个“基”。形式化地说,Gregor 正在寻找两个整数 aabb,它们同时满足以下两个条件:

  • Pmoda=PmodbP \bmod a = P \bmod b,其中 xmodyx \bmod y 表示 xx 除以 yy 的余数;
  • 2a<bP2 \leq a < b \leq P

请帮助 Gregor 找到他最喜欢的质数的两个“基”!

输入格式

每个测试点包含多个测试用例。第一行包含测试用例的数量 tt1t10001 \leq t \leq 1000)。

接下来的每一行包含一个整数 PP5P1095 \leq P \leq 10^9),保证 PP 是质数。

输出格式

输出应包含 tt 行。每行输出两个整数 aabb2a<bP2 \leq a < b \leq P)。如果有多组解,输出任意一组均可。

说明/提示

第一个查询为 P=17P=17。此时 a=3a=3b=5b=5 是有效的基,因为 17mod3=17mod5=217 \bmod 3 = 17 \bmod 5 = 2。当然还有其他满足条件的数对。

第二个查询为 P=5P=5,唯一的解是 a=2a=2b=4b=4

由 ChatGPT 4.1 翻译

样例

2
17
5
3 5
2 4

在线编程 IDE

建议全屏模式获得最佳体验