Pagini recente » Cod sursa (job #578623) | Cod sursa (job #1420617) | Cod sursa (job #2428453) | Cod sursa (job #9406) | Cod sursa (job #1809635)
#include <fstream>
using namespace std;
ifstream cin("secv2.in");
ofstream cout("secv2.out");
int nr, k, i, v[50005], suma[50005], suma_min[50005], cat, maxim, poz2, poz_suma_min[50005], poz1;
int main()
{
cin >> nr >> k;
maxim = -1260000000;
for(i=1; i <= nr; i++)
{
cin >> v[i];
suma[i] = suma[i-1] + v[i];
if(suma[i] < suma_min[i-1])
{
suma_min[i] = suma[i];
poz_suma_min[i] = i;
}
else
{
suma_min[i] = suma[i-1];
poz_suma_min[i] = poz_suma_min[i-1];
}
//suma_min[i] = min(suma_min[i-1], suma[i]);
}
for(i=k; i <= nr; i++)
{
cat = suma[i] - suma_min[i-k];
if(cat > maxim)
{
maxim = cat;
poz2 = i;
poz1 = poz_suma_min[i-k]+1;
}
}
cout << poz1 << ' ' << poz2 << ' ' << maxim;
}