Codeforces Round #627 (Div. 3) A. Yet Another Tetris Problem

Ava ·
更新时间:2024-11-10
· 863 次阅读

传送门

题意:

给一个长度为n的数组,两种操作,一个是把任意一个ai变成ai+2a_i变成a_i+2ai​变成ai​+2,另一个是如果所有数都大于0,可以把所有数减1,问通过这些操作能否把所有数变为0

思路:

如果任意两个数之差为奇数,那么就不可能,因为每次只能增加2(偶数),减的时候都是同时减的

代码: #include #include #include #include #include #include #include #include #include #include #define pb push_back #define lb lower_bound #define ub upper_bound #define rep(i,a,b) for(int i=a;i=b;i--) typedef long long ll; using namespace std; const int MAXN=4e4+50; const int inf=0x3f3f3f3f; const int M=5000*4; int a[150]; int main() { std::ios::sync_with_stdio(false),cin.tie(0),cout.tie(0); int t,n; cin>>t; while(t--){ cin>>n; rep(i,1,n)cin>>a[i]; sort(a+1,a+n+1); int f=1; for(int i=2;i<=n;i++){ if((a[i]-a[i-1])%2==1){ f=0; break; } } if(f)cout<<"YES"<<endl; else cout<<"NO"<<endl; } return 0; } /* */
作者:_Alexander



problem tetris CodeForces another round div

需要 登录 后方可回复, 如果你还没有账号请 注册新账号