Cod sursa(job #1058648)
| Utilizator | Data | 15 decembrie 2013 18:53:24 | |
|---|---|---|---|
| Problema | Secventa 2 | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.63 kb |
#include <stdio.h>
using namespace std;
long long max1,s;
int i,k,nr,r,n,a[50004],sf,st,start;
FILE *f,*g;
int main()
{f=fopen ("secv2.in","r");
g=fopen ("secv2.out","w");
fscanf (f,"%d%d",&n,&k);
max1=-1000000000;
start=1;
for (i=1;i<=n;i++)
{
fscanf (f,"%d",&a[i]);
s+=a[i];
nr++;
if (nr>k)
{
r+=a[i-k];
}
if (r<0)
{
start=i-k+1;
s-=r;
r=0;
nr=k;
}
if (s>max1 && nr>=k)
{
max1=s;
st=start;
sf=i;
}
}
fprintf (g,"%d %d %lld",st,sf,max1);
return 0;
}
