Cod sursa(job #856436)
Utilizator | tiron cristian cristi103 | Data | 16 ianuarie 2013 15:13:37 |
---|---|---|---|
Problema | Subsir crescator maximal | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include <iostream>
using namespace std;
int a[100],poz[100],l[100],i,j,n,max,p;
{
cout>>"n= ";
cin<<n;
for(i=1;i<=n;i++)
cin>>a[i];
for(i=1;i<=n;i++)
poz[i]=-1;
for(i=n;i>=1;i--)
{
for(j=n;j>i;j--)
if(a[i]<a[j] && l[i]<1+l[j])
{
l[i]=1+l[j];
poz[i]=j;
if(l[i]>max)
max=l[i];
p=i;
}
}
cout<<max<<"/n";
i=p;
while(i!=-1)
{
cout<<a[i]<<" ";
i=poz[i];
}
cout>>"/n"
system("pause")
return 0;
}