A. Yet Another Tetris Problem


A. Yet Another Tetris Problem


標籤

  • 簡單數學

簡明題意

  • 給一個數列,每次可以給數列中的任何一個數+2.問能不能使得最終所有數相等

思路

  • 這個跟後面一場比賽的一題有點相似。Codeforces Round #630 (Div. 2)的E題。
  • 如果每次可以+2,那麼只要序列的所有數的奇偶性相同即可使得最終全部相等。
  • 奇偶性相同,那麼任意兩個數的差都是偶數。所以也可以用差是否全部爲偶數來判斷。

注意事項


總結

  • 奇偶性一樣,等價於兩兩之差爲偶數

AC代碼

#pragma GCC optimize(2)
#include<iostream>
#include<algorithm>
#include<cmath>
#include<cstring> 
#include<stack>
#include<map>
#include<queue>
#include<cstdio>	
#include<set>
#include<map>
#include<string>
using namespace std;

const int mod = 998244353;

void solve()
{
	int t;
	cin >> t;
	while (t--)
	{
		int n;
		cin >> n;
		int ji = 0, ou = 0;
		for (int i = 1; i <= n; i++)
		{
			int x;
			cin >> x;
			if (x & 1) ji++;
			else ou++;
		}
		if (ji && ou) cout << "NO" << endl;
		else cout << "YES" << endl;
	}
}
	
int main()
{
	//freopen("Testin.txt", "r", stdin);
	solve();
	return 0;
}

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