考虑无论怎么传硬币硬币的总数量始终不变;
同时又由于一开始所有人的硬币数量都是一样的,那么也就是告诉我们 b 是不变的。
b 不变,而硬币总数不变,所以此题等价于求这五个数的平均数是多少。
需要注意无解情况除了平均数是小数外,五个数相加为零(i.e. 平均数为 0)也是无解的。
代码:
//Code By "BlueInRed" OR Wenhao Wu
#include <iostream>
#include <stdio.h>
using namespace std;
int a, b, c, d, e;
int main()
{
cin >> a >> b >> c >> d >> e;
int ans = (a + b + c + d + e) / 5;
if (ans == 0 || (a + b + c + d + e) % 5 != 0)
{
cout << -1 << endl;
}
else
{
cout << ans << endl;
}
return 0;
}