Submission #1177911

#TimeUsernameProblemLanguageResultExecution timeMemory
1177911ezzzaySeparator (CEOI19_separator)C++20
90 / 100
109 ms23772 KiB
#include<bits/stdc++.h> using namespace std; #define int long long #define ff first #define ss second #define pb push_back const int N=3e5+5; const int P=1e9; int a[N]; vector<int>ans; signed main(){ int n; cin>>n; int s=0; set<pair<int,int>>st; int mx=0; for(int i=1;i<=n;i++){ int b; cin>>b; a[i]=(s+b)%P; vector<pair<int,int>>del; auto it=st.upper_bound({a[i],i}); while(it!=st.end()){ del.pb(*it); it++; } for(auto h:del){ st.erase(h); } if(a[i]>=mx){ st.insert({a[i],i}); } mx=max(mx,a[i]); s=st.size(); ans.pb(s); } for(auto s:ans)cout<<s<<endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...