Pagini recente » Cod sursa (job #1317680) | Cod sursa (job #1427470) | Cod sursa (job #12072) | Cod sursa (job #1560205) | Cod sursa (job #221216)
Cod sursa(job #221216)
#include<iostream>
#include<stdio.h>
FILE *f,*g;
int main()
{
f=fopen("scmax.in","r");
g=fopen("scmax.out","w");
long long l[100010],n,imax,max,a[100010],i,k;
fscanf(f,"%ld",&n);
for(i=1;i<=n;i++)
fscanf(f,"%ld ",&a[i]);
l[n]=1;
for(k=n-1;k>=1;k--)
{
l[k]=1;i=k;
do{i++;}while(a[k]>a[i]&&i<n);
if(a[k]<a[i]) l[k]=l[i]+1;
}
max=-1;
for(i=1;i<=n;i++)
if(l[i]>max) {max=l[i];imax=i;}
fprintf(g,"%ld\n %ld",max,a[imax]);
for(i=imax+1;i<=n;i++)
if(a[i]>a[imax]) {imax=i;fprintf(g," %ld ",a[i]);}
return 0;
}