题目描述
你有一个数组 a1,a2,…,an。回答 q 次查询:
如果我们将数组的 al,al+1,…,ar 范围内的所有元素都改为 k,那么整个数组的和会是奇数吗?
请注意,查询是独立的,前面的查询的 “修改” 不会影响后面的查询。
输入格式
每个测试包含多个测试用例。第一行包含测试用例的数量 t(1≤t≤104)。测试用例的描述如下。
每个测试用例的第一行由 2 个整数 n 和 q(1≤n≤2×105;1≤q≤2×105),代表数组长度和查询次数。
每个测试用例的第二行由 n 个整数 ai(1≤ai≤109) 组成——数组 a。
每个测试用例的接下来 q 行由 3 个整数 l,r,k 组成 (1≤l≤r≤n;1≤k≤109) 查询。
保证所有测试用例的 n 之和不超过 2×105,q 之和不超出 2×105。
输出格式
对于每个查询,如果整个数组的和是为奇数,则输出YES
,否则输出 NO
。
答案不计大小写。
测试样例
2
5 5
2 2 1 3 2
2 3 3
2 3 4
1 5 5
1 4 9
2 4 3
10 5
1 1 1 1 1 1 1 1 1 1
3 8 13
2 5 10
3 8 10
1 10 2
1 9 100
YES
YES
YES
NO
YES
NO
NO
NO
NO
YES
样例说明
对于第一个测试用例:
如果将 (2,3) 范围内设置为 3,数组将变为 {2,3,3,3,2},和将为 2+3+3+3+2=13,这是奇数,所以答案是 YES
。
如果将 (2,3) 范围内设置为 4,数组将变为 {2,4,4,3,2},和将为 2+4+4+3+2=15,这是奇数,所以答案是 YES
。
如果将 (1,5) 范围内设置为 5,数组将变为 {5,5,5,5,5},和将为 5+5+5+5+5=25,这是奇数,所以答案是 YES
。
如果将 (1,4) 范围内设置为 9,数组将变为 {9,9,9,9,2},和将为 9+9+9+9+2=38,这是偶数,所以答案是 NO
。
如果将 (2,4) 范围内设置为 3,数组将变为 {2,3,3,3,2},和将为 2+3+3+3+2=13,这是奇数,所以答案是 YES
。