COFO::1285B Just Eat It!

Problem

Point

Design

Complexitya

Code

#include <bits/stdc++.h>
using namespace std;
#define ll long long

int n;
vector <int> a;

bool solve(){
    cin >> n;
    a.resize(n);
    for(auto &i : a) cin >> i;
    ll sum = 0;
    for(int i = 0 ; i < n ; i++){
        sum += a[i];
        if(sum <= 0) return 0;
    }
    sum = 0;
    for(int i = n - 1 ; i >= 0 ; i--){
        sum += a[i];
        if(sum <= 0) return 0;
    }
    return 1;
}
int main(){
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    int T;
    cin >> T;
    while(T--){
        if(solve()) cout << "YES\n";
        else cout << "NO\n";
    }
}
#include<iostream>
#include<vector>
#define sz(v) ((int)(v).size())
#define all(v) (v).begin(), (v).end()
#define rep(i, a, b) for(int i=(a); i<(b); i++)
#define r_rep(i, a, b) for(int i=(a); i >(b); i--)
typedef long long ll;
using namespace std;

int n;
vector<ll> v;
bool solve(){
    v.clear();
    cin >> n;
    v.resize(n);
    ll s = 0;
    rep(i, 0, n){
        cin >> v[i];
        s += v[i];
    }
    
    ll sum = 0;
    rep(i, 0, n-1){
        sum += v[i];
        if(sum >= s) return false;
    }
    sum = 0;
    r_rep(i, n-1, 0){
        sum += v[i];
        if(sum >= s) return false;
    }
    return true;
}

int main(){
 //   freopen("input.txt", "r", stdin);
    int tc; cin >> tc;
    while(tc--) if(solve()) cout << "YES\n"; else cout << "NO\n";
    return 0;
}