Pagini recente » Cod sursa (job #1091937) | Cod sursa (job #125025) | Cod sursa (job #2366532) | Cod sursa (job #804493) | Cod sursa (job #874235)
Cod sursa(job #874235)
#include <iostream>
#include <fstream>
#define NMAX 50010
using namespace std;
int n,k,s[NMAX],m[NMAX],M[NMAX];
int main()
{
ifstream fin("secv2.in");
ofstream fout("secv2.out");
fin>>n>>k;
int x,s2=-25000,p=0,st=0,dr=0;
for(int i=1;i<=n;i++)
{
fin>>x;
if(m[i-1]<m[i-1]+x)
{
s[i]=i-1;
m[i]=m[i-1];
}
else
{
s[i]=i;
m[i]=m[i-1]+x;
}
M[i]=M[i-1]+x;
}
for(int i=k;i<=n;i++)
{
p=(M[i]-m[i-k]>M[i] ? M[i]-m[i-k]:M[i]);
if(p>s2)
{
s2=p;
if(M[i]-m[i-k]>M[i])
{
st=s[i-k];
dr=i;
}
else st=0,dr=i;
}
}
fout<<st<<" "<<dr<<" "<<s2;
return 0;
}