Pagini recente » Cod sursa (job #1961792) | Istoria paginii utilizator/lari.pop | Cod sursa (job #2004804) | Cod sursa (job #282687) | Cod sursa (job #668085)
Cod sursa(job #668085)
#include <cstdio>
#define min -1250000000
#define max 1250000000
int n,k;
int intst,intend,intsum=min,partsum;
int intarr[50005];
int sum[50005];
int h=1;
void read()
{
FILE *in;
in = freopen("secv2.in","r",stdin);
scanf("%d %d\n",&n,&k);
for (int i=1; i<=n; i++)
{
scanf("%d",&intarr[i]);
sum[i] = sum[i-1] + intarr[i];
}
}
void write()
{
FILE *out;
out = freopen("secv2.out","w+",stdout);
setvbuf ( out, NULL, _IOFBF, 1024 );
printf("%d %d %d",intst,intend,intsum);
}
void solve()
{
int i;
for(i=1;i<=n;i++)
{
if (i>k && partsum + intarr[i] < sum[i] - sum[i-k])
{
partsum=sum[i] - sum[i-k];
h = i-k+1;
}
else partsum+=intarr[i];
if(partsum>intsum && i>=k)
{
intsum=partsum;
intend=i;
intst=h;
}
}
}
int main()
{
read();
solve();
write();
}