Pagini recente » Cod sursa (job #1285595) | Cod sursa (job #1303377) | Cod sursa (job #832933) | Cod sursa (job #1158613) | Cod sursa (job #1848352)
#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(dr - st + 1 >= k && sc + v[dr] < v[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;
}