Cod sursa(job #2335341)
Utilizator | Data | 3 februarie 2019 22:22:28 | |
---|---|---|---|
Problema | Subsir crescator maximal | Scor | 65 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.42 kb |
#include <bits/stdc++.h>
int main() {
std::ifstream fin("scmax.in");
std::ofstream fout("scmax.out");
std::vector<int> lis;
int n;
fin >> n;
while(n--) {
int x;
fin >> x;
auto it = std::lower_bound(lis.begin(), lis.end(), x);
if(it == lis.end()) lis.push_back(x);
else *it = x;
}
fout << lis.size() << '\n';
for(auto i: lis) fout << i << ' ';
}