Cod sursa(job #2950901)
Utilizator | Data | 4 decembrie 2022 20:10:11 | |
---|---|---|---|
Problema | Subsir crescator maximal | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.3 kb |
#include<fstream>
std::ifstream f("scmax.in");std::ofstream g("scmax.out");int n,r,i,s,m,v[1<<17],k[1<<17],a[1<<17];void p(){int n;while(a[n=--i]-r);if(--r)p();g<<v[n]<<" ";}main(){for(f>>n,i=1;i<=n;i++){f>>v[i],s=0,k[i]=2e9;while(k[s]<v[i])s++;if(k[s-1]<v[i])k[a[i]=s]=v[i],r=s>r?s:r;}g<<r<<" ",p();}