Cod sursa(job #949860)

Utilizator Barcau_EmanuelBarcau Emanuel Barcau_Emanuel Data 15 mai 2013 11:02:41
Problema Subsir 2 Scor 18
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.84 kb
#include<fstream>
#define modulo 9901;
using namespace std;
ifstream f("subsir2.in");
ofstream g("subsir2.out");
long int a[10005],k,l[10005],x[10005],n,i,max1,poz,sol;

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

    l[n]=x[n]=1;

    for(k=n-1;k>=1;k--)
    {
        max1=0;
        poz=0;
        for(i=k+1;i<=n;i++)
        if(a[i]>=a[k]&&l[i]>max1)
        {
            max1=l[i];
        }
        for(i=k+1;i<=n;i++)
        if(a[i]>=a[k]&&l[i]==max1)
        {
            poz=poz+x[i];
        }
        l[k]=1+max1;
        if(poz==0) x[k]=1;
        else x[k]=poz;
    }
     for(i=1;i<=n;i++)
     if(max1<l[i])
      max1=l[i];
     for(i=1;i<=n;i++)
     if(max1==l[i])
     {sol=sol+x[i];
    }
     g<<max1<<"\n";
     for(i=1;i<=n;i++)
    g<<l[i]<<" "; g<<"\n";
     return 0;
}