Pagini recente » Clasament 9neplace | Cod sursa (job #2356014) | Cod sursa (job #2183133) | Cod sursa (job #2783477) | Cod sursa (job #2386178)
#include <fstream>
using namespace std;
ifstream fin("scmax.in");
ofstream fout("scmax.out");
int n,i,P,maxim,t[100010],v[100010],d[100010],j,u,sol[100010],k;
int main () {
fin>>n;
for (i=1;i<=n;i++) {
fin>>v[i];
}
d[1]=1;
n++;
v[n]=2000000000;
for (i=2;i<=n;i++) {
maxim=0;
P=0;
for (j=1;j<i;j++) {
if (v[i]>v[j] && d[j]>maxim) {
maxim=d[j];
P=j;
}
}
d[i]=maxim+1;
t[i]=P;
}
fout<<d[n]-1<<"\n";
u=t[n];
while (u!=0) {
sol[++k]=v[u];
u=t[u];
}
for (i=k;i>=1;i--) {
fout<<sol[i]<<" ";
}
}