B. Zero Array

题目链接在这里插入图片描述
题意
给你n个数,每次取两个数,然后让其各减1,问能否用一种方式让所有数全部变为0。如果可以,则输出YES,否则输出NO。

思路
记n个数的和为SUM,如果SUM为奇数,显然推出不可能。
如果SUM是偶数,则需要判断n个数中最大的数的2倍与SUM的关系。
记n个数中最大的数为A,那么如果A2>SUM,那么不管怎么减都不可能达到最后全是0的效果。但是如果A2 <= SUM的话,我们就可以把n个数化成两堆,一堆有一个数A,另外一堆有一堆数,SUM-2*A(记为B)。
A + B = A+B=偶数
推出
A B = A-B=偶数 所以A与B的奇偶性相同,我们可以让B这堆减去(A-B)就可以与A相同。

发布了70 篇原创文章 · 获赞 13 · 访问量 3639

猜你喜欢

转载自blog.csdn.net/weixin_44412226/article/details/102885981