Pagini recente » Cod sursa (job #1240304) | Cod sursa (job #1157935) | Cod sursa (job #48529) | Cod sursa (job #3140935) | Cod sursa (job #1390505)
#include<fstream>
using namespace std;
ifstream fin("scmax.in");
ofstream fout("scmax.out");
int v[100010],n,max1,nrmax1,a[2][100010];
void citire()
{
fin>>n;
for(int a1=1;a1<=n;a1++)
{
fin>>v[a1];
}
}
void fct()
{
for(int a1=n;a1>=1;a1--)
{
a[0][a1]=1;
for(int a2=n;a2>a1;a2--)
{
if(v[a2]>v[a1] and a[0][a2]+1>a[0][a1])
{
a[0][a1]=a[0][a2]+1;
a[1][a1]=a2;
}
}
if(a[0][a1]>max1)
{
max1=a[0][a1];
nrmax1=a1;
}
}
}
int main()
{
citire();
fct();
fout<<max1<<endl;
while(nrmax1!=0)
{
fout<<v[nrmax1]<<" ";
nrmax1=a[1][nrmax1];
}
}