Submission #1106561

#TimeUsernameProblemLanguageResultExecution timeMemory
1106561AgageldiBigger segments (IZhO19_segments)C++17
0 / 100
1 ms552 KiB
/* ID: agageld1 LANG: C++17 TASK: */ #include <bits/stdc++.h> using namespace std; #define ll long long #define N 600005 #define ff first #define ss second #define pb push_back #define sz(s) (int)s.size() ll n, t, T, a[N]; string s, g, h; deque <ll> v; void solve(int x) { for(int i = t; i >= 1; i--) { if(x >= v[sz(v)-1]) break; x += a[i]; v[sz(v)-1] -= a[i]; if(!v[sz(v)-1]) v.pop_back(); else if(sz(v) > 1 && v[sz(v)-1] < v[sz(v)-2]) { // x+=v[sz(v)-1]; v[sz(v)-2] += v[sz(v)-1]; v.pop_back(); } } v.pb(x); } int main () { ios::sync_with_stdio(0);cin.tie(0); cin >> n; for(int i = 1; i <= n; i++) { cin >> a[i]; } v.pb(a[1]); for(int i = 2; i <= n; i++) { t = i-1; solve(a[i]); } cout << sz(v) << '\n'; }
#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...