Pagini recente » Cod sursa (job #244593) | Cod sursa (job #2871314) | Cod sursa (job #374779) | Cod sursa (job #102879) | Cod sursa (job #2642992)
#include <fstream>
#include <vector>
#define ll long long
using namespace std;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
ll n, k;
vector<ll> sums;
int main() {
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[i - 1] + 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];
}