Pagini recente » Cod sursa (job #1908886) | Cod sursa (job #3036579) | Cod sursa (job #1116693) | Cod sursa (job #3272975) | Cod sursa (job #877250)
Cod sursa(job #877250)
#include <fstream>
#include <iostream>
using namespace std;
ifstream fin("scmax.in");
ofstream fout("scmax.out");
int i, j, n, LungMax, v[100005], lung[100005];
int main() {
fin >> n;
for (i = 0; i < n; ++i) {
fin >> v[i];
lung[i] = 1;
}
fin.close();
for (i = n - 2; i >= 0; --i) {
for (j = i + 1; j < n; ++j) {
if (v[i] < v[j] && lung[i] < lung[j] + 1)
lung[i] = lung[j] + 1;
}
if (LungMax < lung[i])
LungMax = lung[i];
}
fout << LungMax << '\n';
i = 0;
while (LungMax) {
if (lung[i] == LungMax) {
--LungMax;
fout << v[i] << ' ';
}
++i;
}
fout.close();
return 0;
}