6.9 VJ F - Yet Another Tetris Problem
时间:2020-06-09 20:18:52
收藏:0
阅读:45
#include<bits/stdc++.h>
#define ll long long
#define speed_up ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
using namespace std;
/*俄罗斯方块游戏
题意:有n个数,从左到右每个数表示在这个位置叠了几个方块。现在可以给每列叠加方块,一次只能加两个,问能否消掉所有方块。
只要找出最高的那个,依次与其他列的方块数比较差值,差值为奇数就不可能全部消去
*/
int main()
{
speed_up;
int t;
cin>>t;
while(t--)
{
int n;
cin>>n;
int a[n],is=0,c,maxx=0;
for(int i=0;i<n;i++)
{
cin>>a[i];
maxx=max(maxx,a[i]);
}
for(int i=0;i<n;i++)
{
c=maxx-a[i];
if(c%2!=0)
{
cout<<"NO"<<endl;
is=1;
break;
}
}
if(is==0)cout<<"YES"<<endl;
}
#define ll long long
#define speed_up ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
using namespace std;
/*俄罗斯方块游戏
题意:有n个数,从左到右每个数表示在这个位置叠了几个方块。现在可以给每列叠加方块,一次只能加两个,问能否消掉所有方块。
只要找出最高的那个,依次与其他列的方块数比较差值,差值为奇数就不可能全部消去
*/
int main()
{
speed_up;
int t;
cin>>t;
while(t--)
{
int n;
cin>>n;
int a[n],is=0,c,maxx=0;
for(int i=0;i<n;i++)
{
cin>>a[i];
maxx=max(maxx,a[i]);
}
for(int i=0;i<n;i++)
{
c=maxx-a[i];
if(c%2!=0)
{
cout<<"NO"<<endl;
is=1;
break;
}
}
if(is==0)cout<<"YES"<<endl;
}
return 0;
}
}
评论(0)