#4350. 合并史莱姆(Merge Slimes)
合并史莱姆(Merge Slimes)
题目描述
最初有种大小的橡皮泥。具体来说,对于每个,有个大小为的橡皮泥。小高可以重复任意次数(可能为零)以任意顺序进行橡皮泥合成。
橡皮泥合成的过程如下:
- 选择两个相同大小的橡皮泥。假设这个大小为,则会出现一个新的大小为的橡皮泥。然后,原来的两个橡皮泥消失。
小高想要最小化橡皮泥的数量。通过最优的合成序列,他最终能得到的最少橡皮泥数量是多少?
输入格式
输入从标准输入中以下列格式给出:
输出格式
输出小高重复合成后可能得到的最少橡皮泥数量。
样例
3
3 3
5 1
6 1
3
3
1 1
2 1
3 1
3
1
1000000000 1000000000
13
样例解释
【样例1说明】
最初,有三个大小为的橡皮泥,一个大小为的橡皮泥,和一个大小为的橡皮泥。
小高可以进行两次合成如下:
- 首先,选择两个大小为的橡皮泥进行合成。此时将有一个大小为的橡皮泥,一个大小为的橡皮泥,和两个大小为的橡皮泥。
- 接下来,选择两个大小为的橡皮泥进行合成。此时将有一个大小为的橡皮泥,一个大小为的橡皮泥,和一个大小为的橡皮泥。
无论如何从初始状态重复合成,他都无法将橡皮泥数量减少到个或更少,所以应该输出。
【样例2说明】
他无法进行合成。
数据范围
都不相同
所有输入值都是整数
来源
- AtCoder ABC323D