Cod sursa(job #895314)

Utilizator razvanb87Razvan Buhaianu razvanb87 Data 27 februarie 2013 10:54:05
Problema Subsir crescator maximal Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 1.14 kb
#include <fstream>
#include<iostream>

using namespace std;
int n,x[100],l[100],ant[100];
/*void solutie(int p)
{
if(p>=0)
   {

   solutie(ant[p]);
    cout<<x[p]<<" ";
   }
}
*/

int main()
{       ifstream in("scmax.in");
        in>>n;
        int i,j,a,lmax,p,val;
        for(i=0;i<n;i++)
            in>>x[i];
        in.close();
        for(i=0;i<n;i++)
        {
            lmax=0;a=-1;
            for(j=0;j<i;j++)
                if(x[i]>=x[j])
                    if(l[j]>lmax)
                    {
                        lmax=l[j];
                        a=j;
                    }
            l[i]=lmax+1;
            ant[i]=a;

        }
        lmax=0;
        p=0;
        for(i=0;i<n;i++)
            if(l[i]>lmax)
            {
                lmax=l[i];
                p=i;
            }
        ofstream out("scmax.out");
        out<<lmax<<"\n";
        val=0;
        for(i=0;i<=p;i++)
        {
            if(l[i]>val)
            {
                out<<x[i]<<" ";
                val++;

            }
        }

        //out<<"Solutie";
  //      solutie(p);

    return 0;
}