Pagini recente » Cod sursa (job #2965673) | Cod sursa (job #2435236) | Cod sursa (job #868250) | Cod sursa (job #2628574) | Cod sursa (job #2890753)
//Ilie Dumitru
#include<cstdio>
#include<vector>
typedef long long int ll;
const int NMAX=50005, BITMAX=16;
const ll MOD=1000000007;
FILE* f=fopen("secv2.in", "r"), *g=fopen("secv2.out", "w");
int sP[NMAX], N, M, minS;
int main()
{
int i, x, sumMax, startPos, endPos;
fscanf(f, "%d%d", &N, &M);
for(i=1;i<=N;++i)
fscanf(f, "%d", &x), sP[i]=x+sP[i-1];
minS=0;
sumMax=sP[M];
startPos=0;
endPos=M;
for(i=M;i<=N;++i)
{
if(sP[i-M]<sP[minS])
minS=i-M;
if(sP[i]-sP[minS]>sumMax)
{
sumMax=sP[i]-sP[minS];
startPos=minS;
endPos=i;
}
}
fprintf(g, "%d %d %d", startPos+1, endPos, sumMax);
fclose(f);
fclose(g);
return 0;
}