loj#P3383. 「COCI 2020.11」Euklid
「COCI 2020.11」Euklid
题目描述
译自 COCI 2020/2021 Contest #2 T3「Euklid」
很少有人提到 Euclid 的祖母来自克罗地亚的 Vrsi,Euclid 的堂兄 Edicul 正是来自于那里。
有一天,他们在玩一个叫「发明算法」的游戏。Edicul 的算法是这样的:首先他在沙滩下写下了两个数 ,接下来对这两个数作如下处理:如果 ,他将 交换,否则他令 。Edicul 将会重复上述过程直到有一个数变成 ,此时另外一个数就是他的算法的结果。
形式化地说,设 均为正整数,则 Edicul 的算法的结果 将会是这样的:
$$R(a,b)= \begin{cases} R(b,a) & \text{ if } a < b \\ R \left( \:\!\!\left\lfloor \:\!\!\dfrac{a}{b}\:\!\! \right\rfloor\! , b \right) & \text{ if } a \geq b > 1 \\ a & \text{ if } a \geq b = 1 \end{cases} $$Euclid 思考了一会,说道:「Edicul,我有一个更好的想法……」,剩下的故事大家都知道了。Euclid 求最大公约数的辗转相除法在数论史上留下了浓墨重彩的一笔,但不幸的是,Edicul 的算法却几乎被人遗忘。
在听完这个故事之后,你需要解决这个问题:给出正整数 ,你需要求出正整数 ,使得 ,。
输入格式
输入第一行一个整数 ,代表数据组数。
接下来 行,每行两个整数 。
输出格式
输出 行。对于第 组数据,输出两个整数 使得 ,。
你输出的 要求不得超过 。可以证明在题目的数据范围内,总是存在满足条件的解。
如果有多组满足要求的解,你可以任意输出其中一个。
1
1 4
99 23
2
3 2
5 5
9 39
5 5
数据范围与提示
所有数据均满足:,。
各子任务的分值和约束条件如下:
子任务编号 | 约束 | 分值 |
---|---|---|
无附加约束 |
(分数已折合成百分制)
>