Pagini recente » Cod sursa (job #3290573) | Cod sursa (job #2756235) | Cod sursa (job #1364794) | Cod sursa (job #313857) | Cod sursa (job #2481693)
#include <iostream>
#include <fstream>
#include <deque>
#define NMAX 50005
using namespace std;
ifstream cin("secv2.in");
ofstream cout("secv2.out");
int N, K, indexStart, indexEnd, maxSum, sum = 0, Ti;
int v[NMAX], dp[NMAX];
int main()
{
cin >> N >> K;
for(int i = 1; i <= K ; i++)
{
cin >> v[i];
sum += v[i];
dp[i] = dp[i - 1] + v[i];
}
maxSum = sum;
indexStart = 1;
indexEnd = K;
for(int i = K + 1; i <= N; i++)
{
cin >> v[i];
dp[i] = dp[i - 1] + v[i];
if(dp[i] - dp[i - K] > sum + v[i])
{
sum = dp[i] - dp[i - K];
Ti = i - K + 1;
}
else
sum += v[i];
if(sum > maxSum)
{
maxSum = sum;
indexStart = Ti;
indexEnd = i;
}
}
cout << indexStart << " " << indexEnd << " " << maxSum << "\n";
return 0;
}