cf--contest1324:A. Yet Another Tetris Problem

传送门

A. Yet Another Tetris Problem

题意

俄罗斯方块都玩过吧,题就是这类游戏,一个竖着长度为2的一个放到已有的方块中,可以放很多次。问是否能让这些方块清空。

思路

只需要找里面的最小值,然后每个减去最小值,以表示这些放入后就已经清空了一些方格。然后判断剩下的每个是否为2的倍数,如果全部都是则方格会被全部消除。否则就不能。

AC代码

#include<cstdio>
#include<algorithm>
using namespace std;
int arr[105];
int main()
{
	int t;
	scanf("%d",&t);
	while(t--)
	{
		int n,mi=200;
		scanf("%d",&n);
		for(int i=0;i<n;i++)	scanf("%d",&arr[i]),mi=min(mi,arr[i]);
		for(int i=0;i<n;i++)	arr[i]=arr[i]-mi;
		int flag=true;
		for(int i=0;i<n;i++)
			if(arr[i]%2)	flag=false;
		if(flag)	puts("YES");
		else	puts("NO");
	}
	return 0;
}
发布了67 篇原创文章 · 获赞 1 · 访问量 1311

猜你喜欢

转载自blog.csdn.net/qq_45249273/article/details/104832205