Cod sursa(job #1528464)

Utilizator paul777Astalas Paul paul777 Data 19 noiembrie 2015 18:52:02
Problema Subsir crescator maximal Scor 0
Compilator c Status done
Runda Arhiva educationala Marime 1.02 kb
#include <stdio.h>
#include <stdlib.h>

int main()
{
    unsigned int n;
    scanf("%d",&n);
    printf("Introduceti sirul\n");
    int a[n];
    unsigned int i;
    for (i=0; i<n; i++)
    {
        scanf("%d",&a[i]);
    }
    printf("\n");
    unsigned int j,lel,maxlen=1,maxpos=0,len;
    for(i=0; i<n;)
    {
        len=1;
        unsigned int nexti=n;
        unsigned int f=0;
        lel=i;
        for(j=i+1; j<n; j++)
        {

            if(a[lel]<a[j])
            {
                lel=j;
                len++;
            }
            else if((a[lel]>a[j])&&(f==0))
            {
                f++;
                nexti=j;

            }
        }
        if(len>maxlen)
        {
            maxlen=len;
            maxpos=i;
        }

        i=nexti;

    }
    lel=maxpos;
    printf("%d ",a[maxpos]);
    for(j=maxpos+1; j<n; j++)
    {


        if(a[lel]<a[j])
        {
            printf("%d ",a[j]);
            lel=j;
        }
    }
    return 0;
}