Cod sursa(job #433270)

Utilizator dornescuvladVlad Eugen Dornescu dornescuvlad Data 3 aprilie 2010 15:17:15
Problema Subsir 2 Scor 22
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include<cstdio>
#define MAX_N 100005

using namespace std;


int N, v[MAX_N], D[MAX_N], k, i, j, poz, maxim, mx, oki;

int main()
{
	freopen("subsir2.in","r",stdin);
	freopen("subsir2.out","w",stdout);
	scanf("%d",&N);
	for(i=1;i<=N;i++)
		scanf("%d",&v[i]);
	D[N] = 1;
	
	for(k=N-1;k>=1;k--)
	{
		int mx=0;
		for(j=k+1;j<=N;j++)
			if(v[j]>v[k] && D[j]>mx)
				mx = D[j];
		D[k] = mx + 1;
		if(D[k] > maxim)
		{
			maxim = D[k];
			poz = k;
		}
	}
	
	/*printf("%d",maxim);
	printf("\n");
	printf("%d ",v[poz]);*/
	maxim = 0;
	for(poz=1;poz<=N;poz++)
	{
		for(i=poz+1;i<=N;i++)
		{
		  if(oki == 0)
		  {
				if(v[i] >= v[poz])
					oki = 0;
				else
				{
					oki = 1;
					printf("%d",D[poz]);
				}
		  }
		}
		if(oki == 1)
			break;
	}
			
			
	return 0;
}