Pagini recente » Cod sursa (job #29889) | Cod sursa (job #1705680) | Cod sursa (job #780494) | Cod sursa (job #2588504) | Cod sursa (job #1842563)
#include<fstream>
using namespace std;
ifstream cin("scmax.in");
ofstream cout("scmax.out");
int n, v[100010], pred[100010], imax=0;
long long a[100010];
void write(int i){
if(pred[i]+1) write(pred[i]);
cout<<a[i]<<" ";
}
int main(){
cin>>n;
for(int i=1; i<=n; ++i){
cin>>a[i]; pred[i]=-1; v[i]=1;
for(int j=1; j<i; ++j){
if(a[j]<a[i] && v[j]+1>v[i]){
v[i]=v[j]+1; pred[i]=j;
}
}
if(v[imax]<v[i]) imax=i;
}
cout<<v[imax]<<"\n";
write(imax);
return 0;
}