#2511. 「BJOI2018」双人猜数游戏

题目类型:答案提交 评测方式:文本比较
上传者: oscar

题目描述

Alice 和 Bob 是一对非常聪明的人,他们可以算出各种各样游戏的最优策略。现在有个综艺节目《最强大佬》请他们来玩一个游戏。主持人写了三个正整数 s m n ,然后一起告诉 Alice 和 Bob s \leq m \leq n 以及 s 是多少。(即, s 是接 下来要猜的 m n 的下限。)之后主持人单独告诉 Alice m n 的乘积是多少, 单独告诉 Bob m n 的和是多少。

当然,如果一个人同时知道 m n 的乘积以及 m n 的和话就能很容易地算出 m n 分别是多少,但现在 Alice 和 Bob 只分别知道其中一个,而且只分别知道其中一个,而且他们只能回答主持人的问题,不能交流。从 Alice 或 Bob(见输入)开始 依次询问 Alice/Bob 知不知道 m n 分别是多少, Alice/Bob 只能回答知道/不知道。

为了节目效果,为了显示出 Alice 和 Bob 非常聪明,主持人希望 Alice 和 Bob 一共说了 t 次“不知道 ”以后两个人都知道 m n 是多少了 。现在主持人找到你,希望让帮他构造一组符合条件的 m n

输入格式

输入文件 guess*.in 共一行,格式为s <name> t,其中 s t 的定义见题目描述(注意 Alice 和 Bob 知道 s 是多少), <name>AliceBob,表示主持人第一次问的人。

输出格式

输出文件 guess*.out 共一行两个数,以空格隔开表示一组满足要求的 m n 。若有多组解,输出 m n 的和最小那组解。若仍有多组解,输出 m n 的和最小解中 m 最小的那组解。

输入数据保证有解。

样例

样例输入 1

5 Bob 2

样例输出 1

6 10

样例解释 1

主持人告诉 Alice 和 Bob 5 \leq m \leq n ,单独告诉 Alice mn = 60 ,单独告诉 Bob m + n = 16

主持人问 Bob知不知道 m n 分别是多少, Bob说不知道。

主持人问 Alice知不知道 m n 分别是多少, Alice说不知道。

主持人问 Bob知不知道 m n 分别是多少, Bob说知道。

主持人问 Alice知不知道 m n 分别是多少, Alice说知道。

样例输入 2

2 Alice 3

样例输出 2

4 4

样例解释 2

主持人告诉 Alice 和 Bob 2 \leq m \leq n ,单独告诉 Alice mn = 16 ,单独告诉 Bob m + n = 8

主持人问 Alice知不知道 m n 分别是多少, Alice说不知道。

主持人问 Bob知不知道 m n 分别是多少, Bob说不知道。

主持人问 Alice知不知道 m n 分别是多少, Alice说不知道。

主持人问 Bob知不知道 m n 分别是多少, Bob说知道。

主持人问 Alice知不知道 m n 分别是多少, Alice说知道。

Alice和 Bob分别单独写出了正确的 m n ,观众们觉得 Alice 和 Bob很厉害

数据范围与提示

对于 40\% 的数据, t = 2

对于 100\% 的数据, 1 \leq s \leq 200 2 \leq t \leq 15 ,输入数据保证有解。

编辑器加载中 …