Cod sursa(job #655500)

Utilizator ioalexno1Alexandru Bunget ioalexno1 Data 2 ianuarie 2012 18:57:46
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <stdio.h>
#define inf 1999999999
#define nn 50001
int s[nn],a[nn],b[nn],n,i,max,l,r,k,x;
int main()
{
freopen("secv2.in","r",stdin);
scanf("%d %d\n",&n,&k);
s[0]=0;
a[0]=0;
b[0]=0;
for(i=1;i<=n;++i)
    {
    scanf("%d ",&x);
    s[i]=s[i-1]+x;
    if(s[i]<a[i-1]){
                    a[i]=s[i];
                    b[i]=i;
                   }
    else {
        a[i]=a[i-1];
        b[i]=b[i-1];
         }
    }

fclose(stdin);
max=-inf;
l=0;r=0;
for(i=k;i<=n;i++)
    if(s[i]-a[i-k]>max){
                        max=s[i]-a[i-k];
                        l=b[i-k]+1;
                        r=i;
                        }
freopen("secv2.out","w",stdout);
printf("%d %d %d",l,r,max);
fclose(stdout);
return 0;
}