CF1324A Yet Another Tetris Problem 題解

博客園同步

原題鏈接

簡要題意:

再簡要一波:

每次可以把一個數增加 22,問最後能不能讓所有數相等。(也就是抵消掉)

什麼?題意變成這樣子還做個啥?

你會發現,必須所有數的奇偶性都相同,纔可以;反之就不可以。

這結論不用證明了,因爲每次增加不會改變奇偶性的。

#pragma GCC optimize(2)
#include<bits/stdc++.h>
using namespace std;

inline int read(){char ch=getchar();int f=1;while(ch<'0' || ch>'9') {if(ch=='-') f=-f; ch=getchar();}
	int x=0;while(ch>='0' && ch<='9') x=(x<<3)+(x<<1)+ch-'0',ch=getchar();return x*f;}

int main(){
	int T=read(),n,p;
	while(T--) {
		n=read(),p=read(); bool f=0;
		for(int i=1,t;i<n;i++) {
			t=read();
			if((t&1) != (p&1)) f=1;
		} if(!f) puts("YES");
		else  puts("NO");
	}
	return 0;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章