Advertisement
deushiro

Untitled

Jan 10th, 2020
194
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.59 KB | None | 0 0
  1. #include <cmath>
  2. #include <iostream>
  3. #include <vector>
  4. #include <algorithm>
  5. #include <string>
  6. #include <set>
  7. #include <map>
  8. #include <list>
  9. #include <time.h>
  10. #include <math.h>
  11. #include <random>
  12. #include <deque>
  13. #include <queue>
  14. #include <cassert>
  15. #include <unordered_map>
  16. #include <unordered_set>
  17. #include <iomanip>
  18. #include <bitset>
  19. #include <sstream>
  20. #include <chrono>
  21. #include <cstring>
  22.  
  23. using namespace std;
  24.  
  25. typedef long long ll;
  26.  
  27. ll gcd(ll a, ll b){
  28.     while(a > 0 && b > 0){
  29.         if(a >= b)
  30.             a %= b;
  31.         else
  32.             b %= a;
  33.     }
  34.     return a + b;
  35. }
  36.  
  37. ll lcm(ll a, ll b) {
  38.     return a * b / gcd(a, b);
  39. }
  40.  
  41. int main()
  42. {
  43.     ios_base::sync_with_stdio(false);
  44.     cin.tie(0);
  45.     cout.tie(0);
  46.     int tt;
  47.     cin >> tt;
  48.     while(tt--){
  49.         int n;
  50.         cin >> n;
  51.         vector<ll> a(n);
  52.         ll summ = 0;
  53.         for(int i = 0; i < n; ++i){
  54.             cin >> a[i];
  55.             summ += a[i];
  56.         }
  57.         ll ans1 = a[0];
  58.         ll sum = 0;
  59.         ll min_sum = 0;
  60.         for (int r = 0; r < n - 1; ++r) {
  61.             sum += a[r];
  62.             ans1 = max (ans1, sum - min_sum);
  63.             min_sum = min (min_sum, sum);
  64.         }
  65.         ll ans2 = a[0];
  66.         sum = 0;
  67.         min_sum = 0;
  68.         for (int r = 0; r < n - 1; ++r) {
  69.             sum += a[r];
  70.             ans2 = max (ans2, sum - min_sum);
  71.             min_sum = min (min_sum, sum);
  72.         }
  73.         if(summ > max(ans1, ans2)){
  74.             cout << "YES" << endl;
  75.         }
  76.         else{
  77.             cout << "NO" << endl;
  78.         }
  79.     }
  80. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement