Pagini recente » Cod sursa (job #448639) | Cod sursa (job #105186) | Cod sursa (job #9269) | Cod sursa (job #3193601) | Cod sursa (job #1114296)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("secv2.in");
ofstream g("secv2.out");
int n,v[50001],sfmax,incmax,inceput,k;
long long S,Smax;
int main()
{
f>>n; f>>k;
for (int i=1; i<=n; ++i)
f>>v[i];
S=v[1];
if (k==1) Smax=v[1],incmax=sfmax=1;
inceput=1;
if (S<0) S=0;
for (int i=2; i<=n; ++i)
{
S=S+v[i];
if (S>Smax)
if ((i-inceput+1)>=k)
{
Smax=S;
sfmax=i;
incmax=inceput;
}
if (S<0)
{
S=0;
if ((n-inceput+1)>=k) inceput=i+1;
}
}
g<<incmax<<' '<<sfmax<<' '<<Smax<<'\n';
f.close(); g.close();
return 0;
}