Pagini recente » Cod sursa (job #2575285) | Cod sursa (job #2471125) | Cod sursa (job #1765137) | Cod sursa (job #585597) | Cod sursa (job #2242043)
#include <bits/stdc++.h>
#define NM 50002
#define ll long long
using namespace std;
int n, v[NM], sp[NM], k, mx, mxl, mxr;
int dp[NM], l[NM];
int main()
{
ifstream fin ("secv2.in");
ofstream fout ("secv2.out");
fin >> n >> k;
for(int i = 1; i <= n; i++)
{
fin >> v[i];
sp[i] = sp[i - 1] + v[i];
}
for(int i = 1; i <= n - k + 1; i++)
{
if(dp[i - 1] > 0)
{
dp[i] = dp[i - 1] + v[i];
l[i] = l[i - 1];
}
else
{
dp[i] = v[i];
l[i] = i;
}
}
for(int i = k; i <= n; i++)
if(i == k || sp[i] - sp[i - k] + dp[i - k] > mx)
{
mx = sp[i] - sp[i - k] + dp[i - k];
if(i == k)
mxl = 1;
else
mxl = l[i - k];
mxr = i;
}
fout << mxl << " " << mxr << " " << mx << "\n";
return 0;
}