Pagini recente » Cod sursa (job #2678883) | Cod sursa (job #2797837) | Cod sursa (job #2805290) | Cod sursa (job #1169247) | Cod sursa (job #1848678)
#include <cstdio>
using namespace std;
const int NMAX = 50000;
int v[NMAX + 5];
int main()
{
freopen("secv2.in" , "r" , stdin);
freopen("secv2.out" , "w" , stdout);
int n , k , i , st , dr , smax , stf , drf , sc;
scanf("%d%d" , &n , &k);
for(i = 1 ; i <= n ; i ++)
scanf("%d" , &v[i]);
smax = -25000;
sc = 0;
for(dr = st = 1 ; dr <= n ; dr ++)
{
if(dr - st + 1 < k)
sc = sc + v[dr];
if(dr - st + 1 >= k)
{
if(sc + v[dr] < v[dr])
while(st <= dr && sc + v[dr] < v[dr])
{
if(sc > smax)
smax = sc , stf = st , drf = dr;
sc = sc - v[st];
st ++;
}
sc = sc + v[dr];
if(sc > smax)
smax = sc , stf = st , drf = dr;
}
}
printf("%d %d %d\n" , stf , drf , smax);
return 0;
}