Pagini recente » Cod sursa (job #1840434) | Rating Risca Mihai (mihayr2004) | Cod sursa (job #1777707) | Cod sursa (job #671864) | Cod sursa (job #2679176)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int besti[100001],v[100001],n,maxt,pm,maxx;
void afis (int k ,int m)
{
if (m>0)
{
int i=k-1;
while (besti[i]!=m-1)
i--;
afis(i,m-1);
g<<v[k]<<' ';
}
}
int main()
{
f>>n;
for (int i=1; i<=n; i++)
{
f>>v[i];
}
besti[1]=1;
for (int i=2; i<=n; i++)
{
maxx=0;
for (int j=1; j<i; j++)
{
if (v[j]<v[i] && besti[j]>maxx) maxx=besti[j];
}
besti[i]=maxx+1;
if (besti[i]>maxt)
{
maxt=besti[i];
pm=i;
}
}
g<<maxt<<'\n';
afis(pm,maxt);
return 0;
}