Codeforces Round #750 (Div. 2)的其他题解点我
A. Luntik and Concerts
题目大意:
将a个1,b个2,c个3,分成两份,使两份的差值尽可能小,问最小差值
注意a,b,c>=1
思路:
直接判断所有数总和的奇偶性就好了,因为,a,b,c至少为1,所以只有0,1两种可能
证明:
我们可以同时将a,b,c减1,答案不会变化,也可以将其中任意一种减2,答案也不会变化,这样,a,b,c之间的差值就不会大于1,然后只要通过一边放b,一边放c来使差值加1减1,放a也是差值加1减1,所以差值最大只能是1了。
答案也显然就是 (a + 2 * b + 3 * c) % 2
AC代码:
#include <bits/stdc++.h>
using namespace std;
int main(){
int T;
scanf("%d", &T);
while(T--){
ll a, b, c;
scanf("%lld %lld %lld", &a, &b, &c);
printf("%lld\n", (a * 1 + b * 2 + c * 3) % 2);
}
return 0;
}