Cod sursa(job #313283)

Utilizator IoannaPandele Ioana Ioanna Data 8 mai 2009 17:21:26
Problema Secventa 2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.42 kb
#include<stdio.h>   
long v[50010];   
long inc,sf;   
long smax,n,k;   
  
void read()   
{   
    scanf("%ld%ld",&n,&k);   
    long i;   
    for (i=1;i<=n;i++)   
    {   
        scanf("%ld",&v[i]);   
    }   
}   
  
void rez()   
{   
    long i;   
    long st,dr;   
    long s=0;   
    st=dr=1;   
    s=v[1];   
    smax=-12500000;   
    for (i=2;i<=n;i++)   
    {   
        if (s+v[i]>=v[i)//] || (s+v[i]<v[i] && dr-st+1<k))   
        {   
            s+=v[i];   
            dr++;   
            if (dr-st+1>=k)   
                if (s>smax)   
                {   
                    smax=s;   
                    inc=st;   
                    sf=dr;   
                }   
        }   
        else    
        {   
            
                /*if (s>smax)   
                {   
                    smax=s;   
                    inc=st;   
                    sf=dr;   
                }*/   
            st=i;   
            s=v[i];   
            dr=i;   
        }    
        if (dr-st+1>=k)   
            if (s>smax)   
               {   
                smax=s;   
                inc=st;   
                sf=dr;   
               }   		
    }   
printf("%ld %ld %ld\n",inc,sf,smax);       
}   
  
int main()   
{   
    freopen("secv2.in","r",stdin);   
    freopen("secv2.out","w",stdout);   
    read();   
    rez();   
    return 0;   
}