Pagini recente » Cod sursa (job #2424342) | Cod sursa (job #1221707) | Cod sursa (job #877364) | Cod sursa (job #449683) | Cod sursa (job #2525275)
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream f("scmax.in");
ofstream g("scmax.out");
long n,maxm,xx=1,index=0,sz=1,maxp;
f>>n;
long v[18],e[18],h[18];
for (int i=0;i<n;i++)
{
f>>v[i];
if (i==0)
e[0]=1;
else
{
maxm=0;
for (int j=i-1;j>=0 && xx>maxm;j--)
{
if (v[i]>v[j] && e[j]>maxm)
{
maxm=e[j];
}
}
e[i]=maxm+1;
if (e[i]>xx)
{
xx=e[i];
index=i;
}
}
}
maxp=xx;
g<<xx<<endl;
h[xx]=v[index];
xx--;
for (int j=index;xx>=1;j--)
{
if (v[index]>v[j] && e[j]==xx)
{
index=j;
h[xx]=v[index];
xx--;
}
}
for (int i=1;i<=maxp;i++)
g<<h[i]<<' ';
}