1693A - Directional Increase - CodeForces Solution


greedy *1300

Please click on ads to support us..

Python Code:

import sys
import math
from collections import Counter
from collections import defaultdict


def get_ints(): return list(map(int, sys.stdin.readline().strip().split()))
def get_string(): return sys.stdin.readline().strip()


def solve(arr):
    summ = 0
    for i in range(len(arr)):
        summ += arr[i]
        if summ < 0:
            return "NO"
        if summ == 0:
            for j in range(i+1, len(arr)):
                if arr[j] != 0:
                    return "NO"
            return "YES"
    if summ == 0:
        return "YES"
    return "NO"
    
t = int(input())
for _ in range(t):
            n = get_ints()
    arr = get_ints()
    print(solve(arr))

C++ Code:

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

#define int long long int
#define endl "\n"
#define pb push_back

void solve(){

    int n;
    cin>>n;
    int arr[n];
    int sum =0;
    for(int i=0;i<n;i++){
        cin>>arr[i];
        sum+=arr[i];
    }
    if(sum!=0){
        cout<<"No"<<endl;
        return;
    }

    int j = n-1;
    while(j>=0 && arr[j]==0){
        j--;
    }
    int pre = 0;
    for(int i=0;i<j;i++){
        pre+=arr[i];
        if(pre<=0){
            cout<<"No"<<endl;
            return;
        }
    }
    cout<<"Yes"<<endl;


}


int32_t main()
{   
   int t=1;
   cin>>t;

   while(t--){
        solve();
   }
return 0;
}




    


Comments

Submit
0 Comments
More Questions

13. Roman to Integer
2. Add Two Numbers
515. Find Largest Value in Each Tree Row
345. Reverse Vowels of a String
628. Maximum Product of Three Numbers
1526A - Mean Inequality
1526B - I Hate 1111
1881. Maximum Value after Insertion
237. Delete Node in a Linked List
27. Remove Element
39. Combination Sum
378. Kth Smallest Element in a Sorted Matrix
162. Find Peak Element
1529A - Eshag Loves Big Arrays
19. Remove Nth Node From End of List
925. Long Pressed Name
1051. Height Checker
695. Max Area of Island
402. Remove K Digits
97. Interleaving String
543. Diameter of Binary Tree
124. Binary Tree Maximum Path Sum
1465. Maximum Area of a Piece of Cake After Horizontal and Vertical Cuts
501A - Contest
160A- Twins
752. Open the Lock
1535A - Fair Playoff
1538F - Interesting Function
1920. Build Array from Permutation
494. Target Sum