Pagini recente » Cod sursa (job #670725) | Cod sursa (job #265780) | Cod sursa (job #1623863) | Cod sursa (job #88849) | Cod sursa (job #1279776)
#include "stdio.h"
FILE *f, *g;
int n, k;
int a[50001];
int s[50001];
int start, end, sum, pos_min, index;
int main()
{
f = fopen("secv2.in", "r");
g = fopen("secv2.out", "w");
fscanf(f, "%d", &n);
fscanf(f, "%d", &k);
for(int i = 1; i <= n; i++)
fscanf(f, "%d", &a[i]);
s[0] = 0;
s[1] = a[1];
for(int i = 2; i <= n; i++)
{
s[i] = s[i-1] + a[i];
}
start = 0;
end = k;
sum = s[k];
pos_min = 0;
index = 0;
for(int i = k+1; i <= n; i++)
{
index = index + 1;
if(s[index] < s[pos_min])
pos_min = index;
if(s[i] - s[pos_min] > sum)
{
sum = s[i] - s[pos_min];
start = pos_min;
end = i;
}
}
start = start + 1;
fprintf(g, "%d %d %d", start, end, sum);
fclose(f);
fclose(g);
return 0;
}