Pagini recente » Cod sursa (job #995911) | Cod sursa (job #1543061) | Cod sursa (job #3234609) | Cod sursa (job #2659363) | Cod sursa (job #867243)
Cod sursa(job #867243)
#include <fstream>
#define Open ifstream f("scmax.in"); ofstream g("scmax.out");
//define Open ifstream f("smx.in"); ofstream g("smx.out");
#define Close f.close(); g.close();
const int ler=100000;
using namespace std;
int a[ler],aux[ler];
int main()
{int n,i,w;
Open
f>>n;
for( i=0;i<n;i++)
f>>a[i];
for(i=n;i>=0;i--)
for(int j=i;j<n;j++)
{
if(a[i]<a[j]&&aux[i]<aux[i]+1)
{
aux[i]=aux[j]+1;
break;
}
if(aux[i]==0)
aux[i]=1;
}
int max=-1,ax;
for(i=0;i<n;i++)
{
if(aux[i]>max)
{
max=aux[i];
ax=i;
}
}
g<<max;
w=max+1;
g<<'\n';
for(i=ax;i<n;i++)
{
if(aux[i]<w)
{
w=aux[i];
g<<a[i]<<' ';
}
}
g<<'\n';
/*
for(i=0;i<n;i++)
g<<a[i]<<' ';
g<<'\n';
for(i=0;i<n;i++)
g<<aux[i]<<' ';
*/
Close
return 0;
}