Pagini recente » Cod sursa (job #373361) | Cod sursa (job #1680965) | Cod sursa (job #966320) | Cod sursa (job #884633) | Cod sursa (job #2525056)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int n,v[100000],hossz[100000];
int main()
{
int maxhossz=0,leghosszabb=1,kezdet=1;
f>>n;
for(int i=0;i<n;i++)
f>>v[i];
hossz[n-1]=1;
for (int i=n-2;i>=0;i--){
maxhossz=0;
for (int j=i+1;j<n;j++){
if (v[j]>v[i]&&hossz[j]>maxhossz)
maxhossz=hossz[j];
}
hossz[i]=maxhossz+1;
if(hossz[i]>leghosszabb){
leghosszabb=hossz[i];
kezdet=i;
}
}
g<<leghosszabb<<'\n';
g<<v[kezdet]<<' ';
for(int i=kezdet;i<n;i++){
if (v[i]>v[kezdet]&&hossz[i]==hossz[kezdet]-1){
g<<v[i]<<' ';
kezdet=i;
}
}
return 0;
}