CF1764B.Doremy's Perfect Math Class

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

Doremy's Perfect Math Class

题目描述

“大家好!Doremy 的完美数学课马上就要开始了!如果你想拥有和我一样高的智商,就来尽力表现吧!”在今天的数学课上,Doremy 正在教大家减法。现在她给你出了一道小测验,以证明你在认真听课。

给定一个包含正整数的集合 SS。你可以进行如下操作若干次(可能为零次):

  • 从集合 SS 中选择两个整数 xxyy,满足 x>yx > yxyx-y 不在集合 SS 中。
  • xyx-y 加入集合 SS

你需要告诉 Doremy,若最优地进行操作,集合 SS 中最多可以包含多少个整数。可以证明,这个数是有限的。

输入格式

输入包含多组测试数据。第一行包含一个整数 tt1t1041 \le t \le 10^4),表示测试数据的组数。接下来是每组测试数据的描述。

每组测试数据的第一行包含一个整数 nn2n1052 \le n \le 10^5),表示集合 SS 的大小。

第二行包含 nn 个整数 a1,a2,,ana_1, a_2, \dots, a_n1a1<a2<<an1091 \le a_1 < a_2 < \cdots < a_n \le 10^9),表示集合 SS 中的正整数。

保证所有测试数据中 nn 的总和不超过 2×1052 \times 10^5

输出格式

对于每组测试数据,输出集合 SS 最多可以包含多少个整数。可以证明,这个值是有限的。

说明/提示

在第一个测试用例中,不存在满足条件的 xxyy。集合 SS 最多只能包含 22 个整数。

在第二个测试用例中:

  • 初始时 S={5,10,25}S = \{5, 10, 25\}。你可以选择 x=25x=25y=10y=10,然后将 xy=15x-y=15 加入集合。
  • 此时 S={5,10,15,25}S = \{5, 10, 15, 25\}。你可以选择 x=25x=25y=5y=5,然后将 xy=20x-y=20 加入集合。
  • 此时 S={5,10,15,20,25}S = \{5, 10, 15, 20, 25\}。现在无法再进行任何操作。

经过所有操作后,集合 SS 中共有 55 个整数。可以证明,没有其他操作顺序能使 SS 包含超过 55 个整数。

由 ChatGPT 4.1 翻译

样例

2
2
1 2
3
5 10 25
2
5

在线编程 IDE

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