html5 网站设计,网站到期了,网店推广的目的是什么,企业网站做留言板有什么优势给定一个长度为 n 的数组 a。在一次操作中#xff0c;你可以从索引 2 到 n−1中选择一个索引i#xff0c;然后执行以下两个操作之一#xff1a; 将 a[i−1] 减少 1#xff0c;同时将 a[i1] 增加 1。 将 a[i1] 减少 1#xff0c;同时将 a[i−1] 增加 1。 在每次操作后… 给定一个长度为 n 的数组 a。在一次操作中你可以从索引 2 到 n−1中选择一个索引i然后执行以下两个操作之一 将 a[i−1] 减少 1同时将 a[i1] 增加 1。 将 a[i1] 减少 1同时将 a[i−1] 增加 1。 在每次操作后所有值必须保持非负数。你能否通过任意次数的操作使所有元素相等
输入格式:
第一行包含一个整数 t (1≤t≤10的4次方)表示测试用例的数量。 每个测试用例的第一行包含一个整数 n (3≤n≤2⋅10的5次方)表示数组的长度。 每个测试用例的第二行包含 n 个整数 ai (1≤ai≤10的9次方)表示数组的元素。 保证所有测试用例的 n 之和不超过 2⋅10的5次方。
输出格式:
对于每个测试用例如果可以通过任意次数的操作使所有数组元素相等则输出 “YES”不包含引号否则输出”NO”不包含引号。
输入样例:
8
3
3 2 1
3
1 1 3
4
1 2 5 4
4
1 6 6 1
5
6 2 1 4 2
4
1 4 2 1
5
3 1 2 1 3
3
2 4 2
输出样例:
在这里给出相应的输出。例如
YES
NO
YES
NO
YES
NO
NO
NO 代码
#include stdio.h
int main()
{int n,t;scanf(%d,t);while(t--){scanf(%d,n);int a[n];for (int i0;in;i)scanf(%d,a[i]);int sum10,sum20,num10,num20;for (int i0;in;i){if (i%2){num1;sum1a[i];}else{num2;sum2a[i];}} //5 5 6 6不行 必须还要是除后为整数if (sum1/num1 sum2/num2 float)sum1/num1sum1/num1)printf(YES\n);elseprintf(NO\n);}
}