CF1549A.Gregor and Cryptography
入门
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Gregor is learning about RSA cryptography, and although he doesn't understand how RSA works, he is now fascinated with prime numbers and factoring them.
Gregor's favorite prime number is P. Gregor wants to find two bases of P. Formally, Gregor is looking for two integers a and b which satisfy both of the following properties.
- Pmoda=Pmodb, where xmody denotes the remainder when x is divided by y, and
- 2≤a<b≤P.
Help Gregor find two bases of his favorite prime number!
格雷戈尔正在学习 RSA 密码学,尽管他并不理解 RSA 的工作原理,但他现在对素数及其因式分解着了迷。
格雷戈尔最喜爱的素数是 P。他想为 P 找到两个“底数”。形式化地说,格雷戈尔在寻找两个整数 a 和 b,它们同时满足以下两个条件:
- Pmoda=Pmodb,其中 xmody 表示 x 除以 y 所得的余数;
- 2≤a<b≤P。
请帮助格雷戈尔找到他最喜爱的素数的两个底数!
输入格式
Each test contains multiple test cases. The first line contains the number of test cases t (1≤t≤1000).
Each subsequent line contains the integer P (5≤P≤109), with P guaranteed to be prime.
每个测试包含多个测试用例。第一行包含测试用例的数量 t(1≤t≤1000)。
随后的每一行包含一个整数 P(5≤P≤109),且保证 P 为质数。
输出格式
Your output should consist of t lines. Each line should consist of two integers a and b (2≤a<b≤P). If there are multiple possible solutions, print any.
你的输出应包含 t 行。每行应包含两个整数 a 和 b(满足 2≤a<b≤P)。若存在多个可行解,输出任意一个即可。
输入输出样例
输入#1
2 17 5
输出#1
3 5 2 4
说明/提示
The first query is P=17. a=3 and b=5 are valid bases in this case, because 17mod3=17mod5=2. There are other pairs which work as well.
In the second query, with P=5, the only solution is a=2 and b=4.
第一个查询中,P=17。此时 a=3 和 b=5 是有效的底数,因为 17mod3=17mod5=2。还存在其他满足条件的数对。
第二个查询中,当 P=5 时,唯一解为 a=2 和 b=4。
输入解题思路,AI测评打分。不知道怎么写?