Cod sursa(job #2954542)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 14 decembrie 2022 19:16:48
Problema Subsir 2 Scor 45
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.53 kb
#include<fstream>
using namespace std;
ifstream F("subsir2.in");
ofstream G("subsir2.out");
int n,i,a[5001],b,c[5001],l[5001],m,j;
int main()
{
    for(F>>n,i=1;i<=n;F>>a[i],l[i++]=1);
    for(i=2;i<=n;++i)
        for(j=1;j<i;++j)
            if(a[i]>a[j]&&l[i]<l[j]+1)
                l[i]=l[j]+1;
    for(i=1;i<=n;m=max(m,l[i]),++i);
    for(G<<m<<'\n',b=1e6,c[m]=n,i=m;i;--i)
        for(j=c[i];j;--j)
            if(l[j]==i&&b>=a[j])
                b=a[j],c[i-1]=j;
    for(i=0;i<m;G<<c[i++]<<' ');
    return 0;
}