Cod sursa(job #1012489)

Utilizator dan.ghitaDan Ghita dan.ghita Data 19 octombrie 2013 09:27:30
Problema Subsir crescator maximal Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int v[100002], m[100002], n, s, mx, pmx;


int main(){
    f>>n;
for(int i=1; i<=n; ++i) f>>v[i], m[i]=1;

for(int i=n-1; i>0; --i){
    s=0;
    for(int j=i+1; j<=n; ++j)
        if(v[j]>v[i]&&s<m[j]) s=m[j];
    m[i]+=s;
    if(m[i]>mx) mx=m[i], pmx=i;
}
g<<mx<<'\n';
for(int i=pmx; i<=n&&mx; ++i)
if(m[i]==mx) g<<v[i]<<' ', mx--;

g.close();
return 0;}