Pagini recente » Cod sursa (job #1691230) | Cod sursa (job #2058499) | Cod sursa (job #2108347) | Cod sursa (job #3041598) | Cod sursa (job #2391333)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin ("scmax.in");
ofstream fout ("scmax.out");
int n, v[100001], poz, t[100001], d[100001], maxim, lsol, st;
void drum(int st) {
if (st!=0) {
drum(t[st]);
fout<<v[st]<<" ";
}
}
int main (){
fin>>n;
fin>>v[1];
d[1]=1;
for(int i=2; i<=n; i++){
fin>>v[i];
maxim=0;
poz=0;
for(int j=1; j<i; j++){
if(v[i] > v[j] && d[j] > maxim){
maxim=d[j];
poz=j;
}
}
d[i]=maxim+1;
t[i]=poz;
if(d[i] > lsol){
lsol=d[i];
st=i;
}
}
fout<<lsol<<"\n";
drum(st);
return 0;
}