Pagini recente » Cod sursa (job #2163846) | Cod sursa (job #631471) | Cod sursa (job #209535) | Cod sursa (job #317838) | Cod sursa (job #2275120)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("scmax.in");
ofstream out("scmax.out");
long long n, a[100001],scm[100001],ind,maxi,maxa;
int main()
{
in>>n;
for(int i=1;i<=n;i++)
{
in>>a[i];
int maxim=0;
for(int j=1;j<i;j++)
{
if(scm[j]>maxim && a[i]>a[j])maxim=scm[j];
}
scm[i]=maxim+1;
}
for(int i=1;i<=n;i++)
{
if(scm[i]>maxa)
{
maxi=i;
maxa=scm[i];
}
}
out<<scm[maxi]<<'\n';
int cont=0,ant=0;
for(int i=1;i<=n;i++)
{
if((cont+1)==scm[i] && a[i]<a[maxi] && ant<a[i])
{
cont++;
ant=a[i];
out<<a[i]<<' ';
}
}
out<<a[maxi];
return 0;
}