Pagini recente » Cod sursa (job #1470772) | Cod sursa (job #900816) | Cod sursa (job #40991) | Cod sursa (job #1439247) | Cod sursa (job #811990)
Cod sursa(job #811990)
# include <fstream>
using namespace std;
ifstream fin("scmax.in");
ofstream fout("scmax.out");
const int dim = 100001;
int v[dim],lgm[dim];
int main()
{
int n,i,k,t,max;
fin >> n;
for( i = 1 ; i <= n ; ++i )
fin >> v[i];
lgm[n] = 1;
for( k = n - 1 ; k >= 1 ; --k )
{
max = 0;
for( i = k + 1 ; i <= n ; ++i )
if( v[i] >= v[k] && lgm[i] > max )
max = lgm[i];
lgm[k] = max + 1;
}
max = lgm[1];
t = 1;
for( k = 1 ; k <= n ; ++k )
if( lgm[k] > max )
{
max = lgm[k];
t = k;
}
fout << max << '\n';
for( i = t + 1 ; i <= n ; ++i )
if( v[i] > v[t] && lgm[i] == max - 1 ){
fout << v[i] << " ";
max = max - 1;
}
return 0;
}