Pagini recente » Cod sursa (job #550217) | Cod sursa (job #1960392) | Cod sursa (job #2102560) | Cod sursa (job #81805) | Cod sursa (job #299210)
Cod sursa(job #299210)
#include <iostream>
#include <fstream>
#include<stdio.h>
using namespace std;
const char iname[] = "secv2.in";
const char oname[] = "secv2.out";
#define MAXN 50010
#define Max(a, b) ((a) > (b) ? (a) : (b))
int S[MAXN], n,k;
int main(void)
{
int i;
ifstream in(iname);
freopen("secv2.in","r",stdin);
scanf("%d %d",&n,&k);
for(i = 1; i <= n; i++) scanf("%d",&S[i]);
int bestSum = -int(2e9), min = 0, idx, beg, end;
for(i = 1; i <= n; i++)
{
S[i] += S[i - 1];
if (bestSum < S[i] - min && i-idx+1 >= k)
bestSum = S[i] - min, beg = idx + 1, end = i;
if (min > S[i])
min = S[i], idx = i;
}
ofstream out(oname);
out << beg << " " << end << " " << bestSum;
in.close(), out.close();
return 0;
}