Pagini recente » Cod sursa (job #2703319) | Cod sursa (job #1049281) | Cod sursa (job #2770187) | Cod sursa (job #164788) | Cod sursa (job #2784826)
#include <fstream>
#include <vector>
using namespace std;
int main()
{
fstream fin("secv2.in", ios::in);
fstream fout("secv2.out", ios::out);
int n, k;
fin >> n >> k;
vector<int> s(n + 1, 0);
for(int i = 1; i <= n; ++i) {
int x;
fin >> x;
s[i] = s[i - 1] + x;
}
int minIdx = 0;
int minimum = 0;
int maxIdx = k;
int maximum = s[k];
int sol = maximum;
int solMinIdx = 1;
int solMaxIdx = k;
for(int i = 1; i <= n - k; ++i) {
if(s[i] < minimum) {
minimum = s[i];
minIdx = i;
}
if(s[i + k] > maximum) {
maximum = s[i + k];
maxIdx = i + k;
}
if(maximum - minimum > sol) {
sol = maximum - minimum;
solMinIdx = minIdx + 1;
solMaxIdx = maxIdx;
}
}
fout << solMinIdx << ' ' << solMaxIdx << ' ' << sol;
return 0;
}