제출 #494958

#제출 시각아이디문제언어결과실행 시간메모리
494958luka1234Money (IZhO17_money)C++14
0 / 100
0 ms204 KiB
#include<bits/stdc++.h> #define ll long long #define ff first #define ss second using namespace std; int main(){ int n; cin>>n; multiset<int> s; int a[n+1]; for(int k=1;k<=n;k++){ cin>>a[k]; } s.insert(a[1]); int das=1; int ans=1; for(int k=2;k<=n;k++){ if(a[k]>a[k-1]){ s.insert(a[k]); } else{ das=k; break; } } int l=das; multiset<int>::iterator it; vector<int> v; int mx=0; for(int k=das;k<=n;k++){ it=s.upper_bound(a[l]); if(a[k]<mx){ l=k; ans++; mx=0; for(int i:v) s.insert(i); v.clear(); continue; } if(it==s.end()){ mx=max(mx,a[k]); v.push_back(a[k]); continue; } int ind=*it; if(ind<a[k]){ l=k; ans++; mx=0; for(int i:v) s.insert(i); v.clear(); continue; } v.push_back(a[k]); mx=max(mx,a[k]); } cout<<ans+1; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...