Pagini recente » Cod sursa (job #2801689) | Cod sursa (job #2746572) | Cod sursa (job #2760018) | Cod sursa (job #2837530) | Cod sursa (job #2415663)
#include <cstdio>
#include <climits>
using namespace std;
const int NMAX = 50005;
int v[NMAX],sp[NMAX];
int main()
{
freopen("secv2.in","r",stdin);
freopen("secv2.out","w",stdout);
int n , k , sc = 0 , smax = INT_MIN , stc = 0,st,dr;
scanf("%d%d",&n,&k);
for(int i = 1 ; i <= n ; i++)
{
scanf("%d",&v[i]);
sp[i] = sp[i-1] + v[i];
}
for(int i = 1 ; i <= n ; i++)
{
if(i >= k && sp[i]-sp[i-k]>sc+v[i])
{
sc = sp[i]-sp[i-k];
stc = i-k+1;
}
else
sc += v[i];
if(sc > smax)
{
smax = sc;
st = stc;
dr = i;
}
}
printf("%d %d %d\n",st,dr,smax);
return 0;
}