Cod sursa(job #874567)

Utilizator howsiweiHow Si Wei howsiwei Data 8 februarie 2013 20:27:10
Problema Subsir crescator maximal Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.42 kb
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;

int main() {
	int n, a; cin >> n;
	vector<int> minlast;
	vector<int>::iterator it;
	for (; n>0; --n) {
		cin >> a;
		it=lower_bound(minlast.begin(),minlast.end(),a);
		if (it==minlast.end()) minlast.push_back(a);
		else *it=a;
	}
	cout << minlast.size() << '\n';
	for (it=minlast.begin(); it!=minlast.end(); ++it)
		cout << *it << ' ';
	return 0;
}