Cod sursa(job #321853)

Utilizator doru.nituNitu Doru Constantin doru.nitu Data 7 iunie 2009 16:48:23
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.92 kb
#include<stdio.h>
int a[50004],sum[50004],min,i,j,k,n,mini,d,st;
long long s=-2000000000;
int main()
{ freopen("secv2.in","r",stdin);
  freopen("secv2.out","w",stdout);
  scanf("%d %d",&n,&k);
  scanf("%d",&a[1]);
  sum[1]=a[1];
  for(i=2;i<=n;i++) { scanf("%d",&a[i]);
                      sum[i]=sum[i-1]+a[i];
                    }
 for(i=k;i<=n;i++) { if(sum[i]-sum[mini]>s) { s=sum[i]-sum[mini];
                                            d=i;
                                            st=mini+1;
                                          }
                     if(sum[i-k+1]<min) { min=sum[i-k+1];
                                          mini=i-k+1;
                                        } 
                    }                                           
                                         
 printf("%d %d %d\n",st,d,s);
 fclose(stdin);
 fclose(stdout);
 return 0;
}