Cod sursa(job #260757)

Utilizator paul9iTermure Paul Mihai paul9i Data 17 februarie 2009 15:28:23
Problema Subsir crescator maximal Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.61 kb
#include<iostream>
#include<fstream>
using namespace std;
main ()
{long i, j,a[10000],l[10000],poz[10000],n;
ifstream g("scmax.in");
g>>n;
for(i=1;i<=n;i++)
g>>a[i];
g.close();
l[n]=1;
poz[n]=-1;
  for(i=n-1;i>0;i--)
    for(l[i]=1, poz[i]=-1, j=i+1; j<=n; j++)

if(a[i]<=a[j] && l[i]<1+l[j])
 
 { 
              l[i]=1+l[j]; poz[i]=j;}
    ofstream fout("scmax.out");          
    int max=l[1],pozmax=1;
    for (i=2;i<=n;i++)
    if(max<l[i])
    {max=l[i]; pozmax=i;}
    fout<<max<<endl;
     
     for(i=pozmax;i!=-1;i=poz[i])
     fout<<a[i];
     fout.close();
     }