Pagini recente » Cod sursa (job #1702605) | Cod sursa (job #2934346) | Cod sursa (job #1182830) | Cod sursa (job #772331) | Cod sursa (job #717765)
Cod sursa(job #717765)
#include<fstream>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
long i,n,v[100000];
void citire()
{
f>>n;
for(i=1;i<=n;i++)
f>>v[i];
}
int main()
{
unsigned k,max=0,t;
long sir[100000];
citire();
sir[n]=1;
for(k=n-1;k>=1;k--)
{
max=0;
for(i=k+1;i<=n;i++)
if(v[i]>v[k]&&sir[i]>max)
max=sir[i];
sir[k]=1+max;
}
max=sir[1];t=1;
for(i=1;i<=n;i++)
if(max<sir[i]) max=sir[i], t=i;
g<<max<<'\n';
g<<v[t]<<' ';
for(i=t+1;i<=n;i++)
if(v[i]>v[t]&&max-1==sir[i])
{
g<<v[i]<<' ';
max--;
}
f.close();
g.close();
}