Pagini recente » Cod sursa (job #966966) | Cod sursa (job #1559518) | Cod sursa (job #1237265) | Cod sursa (job #2913253) | Cod sursa (job #543939)
Cod sursa(job #543939)
#include<fstream.h>
int main()
{
long long a[100000],min[100000]={0},n,k,j,i,b[100000]={0},t,x[100000];
ifstream f("scmax.in");
f>>n;
k=0;
f>>a[0];
min[0]=a[0];
for(i=1;i<n;i++)
{
f>>a[i];
if(a[i]<min[0]) min[0]=a[i];
for(j=k;j>0;j--)
if(a[i]<min[j]&&a[i]>min[j-1])
{
min[j]=a[i];
b[i]=j;
}
if(a[i]>min[k])
{
k++;
min[k]=a[i];
b[i]=k;
}
}
f.close();
ofstream g("scmax.out");
g<<k+1<<'\n';
t=k;
for(i=n-1;k!=-1;i--)
if(b[i]==k)
{
x[k]=a[i];
k--;
}
for(j=0;j<t+1;j++)
g<<x[j];
g.close();
return 0;
}