Cod sursa(job #2115516)

Utilizator Draganoid345Rusnac Dragos Draganoid345 Data 26 ianuarie 2018 20:46:39
Problema Subsir crescator maximal Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <bits/stdc++.h>
using namespace std;

typedef long long ll;

ifstream fin("scmax.in");
ofstream fout("scmax.out");
	
int A[1000],L[1000],P[1000],n,x,mx,p;

void scrie(int p){
	if(p!=-1){
		scrie(P[p]);
		fout<<A[p]<<" ";	
	}
	
}

int main(){
	
	fin>>n;
	for(int i=0;i<n;i++){
		fin>>A[i];
		L[i]=1;
		P[i]=-1;
	}
	for(int i=1;i<n;i++){
		for(int j=0;j<i;j++){
			if(A[i]>A[j] && L[i]<L[j]+1){
				L[i]=L[j]+1;
				P[i]=j;
				if(L[i]>mx){
					mx=L[i];
					x=i;
				}
			}
		}
	}
	p=x;
	fout<<mx<<"\n";
	scrie(p);
	return 0;
}