Pagini recente » Cod sursa (job #2716088) | Cod sursa (job #2369093) | Cod sursa (job #1626209) | Borderou de evaluare (job #2388894) | Cod sursa (job #2472200)
#include <fstream>
using namespace std;
ifstream f("secv2.in");
ofstream g("secv2.out");
int n, k, maxim = -1000000, startMax, endMax;
int a[50002];
void solve()
{
int suma = 0, sumaUltK = 0, x, startCurr = 0;
f>>n>>k;
for(int i = 0; i<k; i++)
{
f>>a[i];
suma+=a[i];
sumaUltK+=a[i];
}
maxim = suma;
startMax = 0;
endMax = k-1;
for(int i = k; i<n; i++)
{
f>>a[i];
suma+=a[i];
sumaUltK-=a[i-k];
sumaUltK+=a[i];
if(sumaUltK > suma)
{
startCurr = i-k+1;
suma = sumaUltK;
}
if(suma > maxim)
{
maxim = suma;
startMax = startCurr;
endMax = i;
}
}
g<<startMax+1<<" "<<endMax+1<<" "<<maxim;
}
int main()
{
solve();
return 0;
}