Pagini recente » Cod sursa (job #1946503) | Cod sursa (job #3144214) | Cod sursa (job #332373) | Cod sursa (job #2376386) | Cod sursa (job #2573214)
#include <fstream>
using namespace std;
int v[100005], n;
int t[100005], a[100005];
int _max, s;
ifstream fin("scmax.in");
ofstream fout("scmax.out");
void af(int x)
{
if(t[x]!=1)
af(a[x]);
fout<<v[x]<<" ";
}
int main()
{
fin>>n;
for(int i=1; i<=n; i++)
fin>>v[i], t[i]=1;
for(int i=2; i<=n; i++)
for(int j=1; j<i; j++)
{
if(v[i]>v[j])
if(t[i]<t[j]+1) {t[i]=t[j]+1, a[i]=j;}
}
for(int i=1; i<=n; i++) if(t[i]>_max) _max=t[i], s=i;
fout<<_max<<'\n';
af(s);
return 0;
}