Pagini recente » Cod sursa (job #161194) | Cod sursa (job #1097692) | Cod sursa (job #773118) | Cod sursa (job #382167) | Cod sursa (job #2926712)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int n , i , maxl , j , v[100005] , l[100005] , maxim;
int main()
{
f >> n;
for(i = 1 ; i <= n ; i++)
f >> v[i];
l[n] = 1;
for(i = n - 1 ; i >= 1 ; i--)
{
maxl = 0;
for(j = i + 1 ; j <= n ; j++)
{
if(v[i] < v[j] && l[j] > maxl)
maxl = l[j];
}
l[i] = maxl + 1;
if(l[i] > maxim)
maxim = l[i];
}
g << maxim << '\n';
for(i = 1 ; i <= n ; i++)
{
if(l[i] == maxim)
{
g << v[i] << " ";
maxim--;
}
}
return 0;
}