CodeForces-1201B 思维题

一、内容

题意:给定一个序列,每次选择2个元素(下标不同)分别减去1,问最后能否全部为0。

二、思路

  • 每次减2,所以和必须是偶数
  • 最大的数必须小于等于 sum/2。

三、代码

#include 
#define max(a,b) ((a) > (b) ? (a) : (b))
int n, maxNum, num;
long long sum;
int main() {
     
	scanf("%d", &n);
	for (int i = 1; i <= n; i++) {
     
		scanf("%d", &num);
		maxNum = max(maxNum, num);
		sum += num;
	}
	if (sum % 2 != 0 || maxNum > sum / 2) {
     
		printf("NO");
	} else {
     
		printf("YES");
	}
	return 0; 
} 

你可能感兴趣的:(思维题,数学,CF)