Pagini recente » Cod sursa (job #1523655) | Cod sursa (job #2298140) | Cod sursa (job #1996439) | Cod sursa (job #2390824) | Cod sursa (job #1915855)
#include <fstream>
#include <climits>
using namespace std;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
#define nmax 50001
int n, k;
long long v[nmax]={0}, bestsum;
int main()
{
int i, idx, st, dr, minim;
fin>>n>>k;
for(i=1; i<=n; i++)
{
fin>>v[i];
v[i]+=v[i-1];
}
if(n==k)
{
fout<<1<<' '<<k<<' '<<v[k];
fout.close();
return 0;
}
bestsum=LONG_LONG_MIN;
minim=0; idx=st=dr=0;
for(i=1; i<=n; i++)
{
if(bestsum<v[i]-minim && i-idx>=k)
{
bestsum=v[i]-minim;
st=idx+1;
dr=i;
}
if(minim>v[i])
{
minim=v[i];
idx=i;
}
}
fout<<st<<' '<<dr<<' '<<bestsum<<'\n';
fout.close();
return 0;
}