#arc128b. [arc128_b]Balls of Three Colors
[arc128_b]Balls of Three Colors
题目描述
我们有 个红球, 个绿球和 个蓝球。你可以执行以下操作任意次数:
- 选择两个不同颜色的球,并将它们转化为剩下颜色的两个球。
例如,你可以选择一个红球和一个蓝球,将它们转化为两个绿球。
你的目标是使所有球都具有相同的颜色。判断这个目标是否可行。如果可行,找出实现它所需的最小操作次数。
对于每个输入文件,解决 个测试用例。
约束条件
- 输入中的所有值都是整数。
输入
输入以以下格式从标准输入给出:
每个测试用例的格式如下:
输出
对于每个测试用例,如果无法实现目标,则输出 -1
;否则,输出实现目标所需的最小操作次数。
示例输入 1
3
1 2 2
1 2 3
1 2 4
示例输出 1
2
-1
4
例如,在 中,一种最优的操作序列是:
- 选择一个绿球和一个蓝球,将它们转化为两个红球;
- 选择一个红球和一个蓝球,将它们转化为两个绿球;
- 选择一个红球和一个蓝球,将它们转化为两个绿球;
- 选择一个红球和一个蓝球,将它们转化为两个绿球。