Pagini recente » Cod sursa (job #1750578) | Cod sursa (job #3211397) | Cod sursa (job #1847835) | Cod sursa (job #2694992) | Cod sursa (job #3131664)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream in("secv2.in");
ofstream out("secv2.out");
int a[50001];
int main()
{
int N, K, i, s, smax, l, lmax, dr;
in >> N >> K;
for (i = 1; i <= N; ++i)
in >> a[i];
in.close();
s = 0;
smax = 0;
l = 0;
lmax = 0;
for (i = 1; i <= N; ++i)
{
if (s + a[i] >= 0)
{
s += a[i];
l++;
}
else
{
s = 0;
l = 0;
}
if (s > smax && l >= K)
{
smax = s;
lmax = l;
dr = i;
}
}
if (lmax == 0)
{
s = 0;
sort(a + 1, a + N + 1, greater<int>());
for (i = 1; i <= K; ++i)
s += a[i];
out << 1 << ' ' << K << ' ' << s << '\n';
return 0;
}
out << dr - lmax + 1 << ' ' << dr << ' ' << smax << '\n';
out.close();
return 0;
}