Pagini recente » Cod sursa (job #2307398) | Cod sursa (job #31714) | Cod sursa (job #55543) | Cod sursa (job #1128069) | Cod sursa (job #2642998)
#include <fstream>
#include <vector>
#define ll long long
using namespace std;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
int main() {
ll n, k;
vector<ll> sums;
fin >> n >> k;
ll temp, lowest = 0, biggest = 0;
fin >> temp;
sums.emplace_back(temp);
for (ll i = 1; i <= n; ++i) {
fin >> temp;
sums.emplace_back(sums.back() + temp);
if (sums[i] < 0 && sums[i] < sums[lowest] && i < n - k)
lowest = i;
if (sums[lowest] < 0) {
if (sums[i] - sums[lowest] > sums[biggest] - sums[lowest] || biggest - lowest < k)
biggest = i;
} else {
if (sums[i] > sums[biggest] || biggest - lowest < k)
biggest = i;
}
}
if (sums[lowest] < 0)
fout << lowest + 2 << " " << biggest + 1 << " " << sums[biggest] - sums[lowest];
else
fout << 1 << " " << biggest + 1 << " " << sums[biggest];
}