Cod sursa(job #631869)

Utilizator StefanLacheStefan Lache StefanLache Data 9 noiembrie 2011 21:16:12
Problema Subsir crescator maximal Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb

#include<stdio.h>
int n,v[100000],best[100000];
using namespace std;
int main()
{
	freopen("scmax.in","r",stdin);
	freopen("scmax.out","w",stdout);
	int i,j,nr,max,maxi,prev;
	scanf("%d",&n);
	for(i=1;i<=n;i++)
		scanf("%d",&v[i]);
	for(i=2;i<=n;i++)
		{   nr=1;prev=v[i];
			for(j=i-1;j>0;j--)
				if(v[j]<prev)
				    {nr++;prev=v[j];}
			best[i]=nr;
		}
		max=0;
	for(i=1;i<=n;i++)
		if(best[i]>max)
		{
			max=best[i];
			maxi=i;
		}
	printf("%d\n",max);
	prev=0;
	for(i=1;i<=maxi;i++)
		if(v[i]<v[maxi]&&v[i]>prev)
			{printf("%d ",v[i]);prev=v[i];}
	return 0;
}