import java.util.Scanner; /** * @author supermejane * @date 2025/10/3 * @description */ public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); // 注意 hasNext 和 hasNextLine 的区别 int n = in.nextInt(); while(n-- > 0) { int len = in.nextInt(); Long oddSum = 0L, evenSum = 0L; //注意精度 boolean result = false; //true加奇数 boolean sign = true; for (int i = 0; i < len; i++) { int a = in.nextInt(); if (sign) { evenSum += a; } else { oddSum += a; } sign = !sign; } Long totalSum = oddSum + evenSum; Long avg = totalSum / len; if (avg * len == totalSum) { int oddCount = len / 2, evenCount = len - oddCount; if (oddSum == avg * oddCount && evenSum == avg * evenCount) result = true; } System.out.println(result ? "YES" : "NO"); } } } //奇数之间是连通的,偶数之间也是,奇偶之间不连通 //由于相邻奇数之间连通,等价于所有的奇数之间都是连通的,可以随意分配到任何想要的状态,所以只取决于数量之和,和初始的位置不相关。