제출 #173842

#제출 시각아이디문제언어결과실행 시간메모리
173842TricksterBigger segments (IZhO19_segments)C++14
0 / 100
2 ms376 KiB
#include <algorithm> #include <iostream> #include <stdio.h> #include <vector> #include <queue> #include <cmath> #include <set> #include <map> #define N 500010 #define ff first #define ss second #define ll long long #define pb push_back #define mod 1000000007 #define pii pair <ll, ll> using namespace std; ll n; ll ans; ll v[N]; ll p[N]; int main() { cin >> n; for(ll i = 1; i <= n; i++) cin >> v[i]; for(ll i = n; i >= 1; i--) p[i] = p[i+1] + v[i]; ll sum = 0; ll prev = 0; queue <ll> Q; for(ll i = 1; i <= n; i++) { sum += v[i]; Q.push(i); if(!Q.empty() && sum >= prev) { while(!Q.empty() && ans) { if(sum-v[Q.front()] < prev) break; sum -= v[Q.front()]; Q.pop(); } Q.empty(); prev = sum, sum = 0; if(i != n && p[i+1] < prev) break; ans ++; } } cout << ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...