Pagini recente » Cod sursa (job #1705696) | Cod sursa (job #800916) | Cod sursa (job #2454859) | Cod sursa (job #2725112) | Cod sursa (job #2602895)
#include <iostream>
#include <fstream>
using namespace std;
#define inf 1e15
ifstream f("secv2.in");
ofstream g("secv2.out");
typedef long long ll;
#define nmax 50005
int n,k=0;
ll v[nmax], sum[nmax];
void citire()
{
f >> n >> k;
for (int i=1; i<=n; i++)
f >> v[i];
for (int i=1; i<=n; i++)
sum[i] = sum[i-1] + v[i];
}
void rezolvare()
{
int p=0,u=0, index=0;
ll minim=inf, maxim=-inf;
for (int i=k; i<=n; i++)
{
if (sum[i-k]<minim)
{
minim = sum[i-k];
index = i-k+1;
}
if(sum[i]-minim > maxim)
{
maxim = sum[i] - minim;
p = index;
u = i;
}
}
g << p << " " << u << " " <<maxim;
}
int main()
{
citire();
rezolvare();
return 0;
}