Cod sursa(job #1968843)

Utilizator nicolaefilatNicolae Filat nicolaefilat Data 17 aprilie 2017 21:43:22
Problema Subsir crescator maximal Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.94 kb
// cel mai lung subsir crescator.cpp : Defines the entry point for the console application.
//

#include <iostream>
#include <fstream>

using namespace std;

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

const int MAX = 100000;
int v[MAX], sol[MAX],N,counter;


void best(int i){
	counter = 0;
	for (int j = i + 1; j < N; j++) {
		if (v[i] < v[j]) {
			counter++;
		}else {
			sol[i] = counter;
			return;
		}
	}
	sol[i] = counter;
	return;
}

void PD(int v[MAX]){
	for (int i = 0; i < N; i++) {
		best(i);
	}
	int best_length = 0,poz = 0;
	for (int i = 0; i < N; i++) {

		if (sol[i] > best_length) {
			best_length = sol[i];
			poz = i;
		}
	}
	g << best_length << endl;
	for (int i = poz; i <= poz + best_length; i++) {
		g << v[i]<<" ";
	}
	g.close();
}
void citire() {
	f >> N;
	for (int i = 0; i < N; i++) {
		f >> v[i];
	}
	f.close();
}


int main(){	
	citire();
	PD(v);
	

    return 0;
}