Cod sursa(job #903323)

Utilizator DevilShadowJunc Raul Cosmin DevilShadow Data 1 martie 2013 19:59:36
Problema Subsir crescator maximal Scor 5
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <fstream>
#define MAX 1<<30
#define maxN 100005
#define max(a, b) a > b ? a : b

using namespace std;

ifstream f ("scmax.in");
ofstream g ("scmax.out");

int n, v[maxN], d[maxN], index;

int main()
{
	f >> n;
	for(int i = 1; i <= n; i ++)
		f >> v[i];
	
	for(int i = 1; i <= n; i ++)
	{
		d[i] = 1;
		for(int j = 1; j < i; j ++)
			if(v[i] > v[j])
			{
				if(d[i] < d[j] + 1)
					index = i;
				d[i] = max(d[i], d[j] + 1);
			}
	}
	g << d[n] << endl;
	for(int i = 0; i < d[n]; i ++)
		g << v[index + i] << " ";
}