Pagini recente » Cod sursa (job #2684909) | Cod sursa (job #2112460) | Cod sursa (job #2487207) | Cod sursa (job #321140) | Cod sursa (job #486906)
Cod sursa(job #486906)
#include <fstream.h>
ifstream fin("scmax.in");
ofstream fout("scmax.out");
int v[100001],n;
int main() {
int l[100001], i, j, max, t;
fin>>n;
for(i=1;i<=n;i++)
fin>>v[i];
fin.close();
l[n] = 1;
for(i=n-1; i>=1; i--) {
max = 0;
for(j=i+1;j<=n;j++) {
if(v[i] < v[j] && max < l[j])
max = l[j];
l[i] = 1+max;
}
}
max = 0;
for(i=1;i<=n; i++) {
if(max < l[i]) {
max = l[i];
t=i;
}
}
fout<<max<<'\n'<<v[t]<<' ';
max--;
for(i=t+1;i<=n;i++) {
if(l[i] == max) {
fout<<v[i]<<' ';
max--;
}
if(max==0)
break;
}
fout.close();
}