Pagini recente » Cod sursa (job #2183224) | Cod sursa (job #2706072) | Cod sursa (job #2270819) | Cod sursa (job #1852521) | Cod sursa (job #1820195)
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int main() {
int n;
f >> n;
vector<int> a(n);
for (int i = 0; i < n; i++) {
f >> a[i];
}
vector<int> d(n+1, 1000000000);
for (int i = 0; i < n; i++) {
*lower_bound(d.begin(), d.end(), a[i]) = a[i];
}
for (int i = 0; i <= n; i++) {
if (d[i] == 1000000000) {
g<< i << '\n';
break;
}
}
for (int i = 0; i <= n; i++) {
if (d[i] == 1000000000) {
return 0;
}
g << d[i]<<" ";
}
}