题解
由于a1的值只能通过对a2的操作进行消除,所以我们可以先根据a1的值迭代出a2,a3的值,然后此时的a2,只能通过a3的操作进行消除.....以此类推,如果其中发现有ai的值<0就输出NO。
code
#include<bits/stdc++.h> using namespace std; const int N=2e5+5; int a[N]; int main(){ // freopen("input.txt","r",stdin); int t; cin>>t; while (t--){ int n; bool bol=true; cin>>n; for (int i=1;i<=n;i++) cin>>a[i]; for (int i=2;i<=n-1;i++){ a[i]-=2*a[i-1]; a[i+1]-=a[i-1]; if (a[i]<0 || a[i+1]<0){ bol=false; break; } } if (a[n-1]>0 || a[n]>0) bol=false; if (bol) cout<<"YES\n"; else cout<<"NO\n"; } return 0; }
标签:int,a1,121,a3,a2,bol,Rudolf From: https://www.cnblogs.com/purple123/p/18077234