Cod sursa(job #505314)
Utilizator | George Marcus PlayLikeNeverB4 | Data | 1 decembrie 2010 18:16:52 |
---|---|---|---|
Problema | Secventa 2 | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.54 kb |
#include <stdio.h>
const int maxn=50001;
int i,N,K,a[maxn],S[maxn],Smax,pmax,pmin;
void pd()
{
int Smin=2000000000;
Smax=-2000000000;
for(i=K;i<=N;i++)
{
if(S[i-K]<Smin)
{
Smin=S[i-K];
pmin=i-K;
}
if(S[i]-Smin>Smax)
{
Smax=S[i]-Smin;
pmax=i;
}
}
}
int main()
{
freopen("secv2.in","r",stdin);
freopen("secv2.out","w",stdout);
scanf("%d %d",&N,&K);
S[0]=0;
for(i=1;i<=N;i++)
{
scanf("%d",&a[i]);
S[i]=S[i-1]+a[i];
}
pd();
printf("%d %d %d",pmin+1,pmax,Smax);
return 0;
}