Pagini recente » Cod sursa (job #442385) | Cod sursa (job #3199899) | Cod sursa (job #429112) | Cod sursa (job #2210761) | Cod sursa (job #895336)
Cod sursa(job #895336)
#include <fstream>
using namespace std;
ofstream out("scmax.out");
int n,x[20000000],l[20000000],ant[20000000];
void solutie (int p)
{
if(p>=0)
{
solutie(ant[p]);
out<<x[p]<<" ";
}
}
int main()
{
ifstream in("scmax.in");
in>>n;
int i,j,lmax,a,p;
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;}
solutie(p);
out.close();
return 0;
}