제출 #1177905

#제출 시각아이디문제언어결과실행 시간메모리
1177905ezzzaySeparator (CEOI19_separator)C++20
50 / 100
1295 ms1860 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<int>st;
    int mx=0;
    for(int i=1;i<=n;i++){
        int b;
        cin>>b;
        a[i]=(s+b)%P;
        vector<int>del;
        for(auto h:st){
            if(a[h]>a[i]){
                del.pb(h);
            }
        }
        for(auto h:del){
            st.erase(h);
        }
        if(a[i]>=mx){
            st.insert(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...