Pagini recente » Cod sursa (job #3030711) | Cod sursa (job #371360) | Cod sursa (job #2713829) | Cod sursa (job #823159) | Cod sursa (job #2566995)
#include <fstream>
#define N 100002
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int v[N],l[N],pred[N];
void afis(int nod)
{
if(nod)
{
afis(pred[nod]);
g<<v[nod]<<' ';
}
}
int main()
{
int n,imax;
f>>n;
f>>v[1];
l[1]=imax=1;
for(int i=2;i<=n;++i)
{
f>>v[i];
l[i]=1;
for(int j=1;j<i;++j)
if(v[j]<v[i] && l[j]+1>l[i])
{
l[i]=l[j]+1;
pred[i]=j;
}
if(l[imax]<l[i])
imax=i;
}
g<<l[imax]<<'\n';
afis(imax);
f.close();
g.close();
return 0;
}