Pagini recente » Cod sursa (job #2838955) | Cod sursa (job #1831135) | Cod sursa (job #172715) | Cod sursa (job #827598) | Cod sursa (job #861580)
Cod sursa(job #861580)
#include <iostream>
#include <cstdio>
using namespace std;
int a[100002],lg[100002],n,maxi,poz;
void citire()
{
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
scanf("%d",&a[i]);
lg[i]=1;
}
}
int main()
{
freopen("scmax.in","r",stdin);
freopen("scmax.out","w",stdout);
citire();
for(int i=n-1;i>0;i--)
for(int j=i+1;j<=n;j++)
if(a[j]>a[i] && lg[i]<=lg[j])
lg[i]=lg[j]+1;
maxi=lg[1],poz=1;
for(int i=2;i<=n;i++)
if(maxi<lg[i])
{
maxi=lg[i];
poz=i;
}
//printf("%d %d",maxi,poz);
printf("%d ",a[poz]);
poz++;
maxi--;
while(maxi)
{
if(lg[poz]==maxi)
{
printf("%d ",a[poz]);
poz++;
maxi--;
}
else
poz++;
}
return 0;
}