Pagini recente » Cod sursa (job #124805) | Cod sursa (job #1625577) | Cod sursa (job #2711503) | Cod sursa (job #2406330) | Cod sursa (job #2097251)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("secv2.in");
ofstream g("secv2.out");
int i,j,n,m,nr=0,v[50010],k,in1,in2,fin1,fin2;
long long sum=-25010,sp=0;
int main()
{
f>>n>>k;
for(i=1;i<=n;i++)
f>>v[i];
if(n==k)
{
for(i=1;i<=n;i++)
sum+=v[i];
g<<1<<' '<<n<<' '<<sum;
return 0;
}
for(i=1;i<=n;i++)
{
if(in1==0)
{
in1=i;
sp+=v[i];
nr++;
}
else
{
sp+=v[i];
nr++;
if(nr>=k)
{
if(sp>sum)
{
sum=sp;
in2=in1;
fin2=i;
}
if(sp<0)
{
in1++;
nr--;
sp-=v[in1-1];
}
}
if(sp<v[i])
{
in1=i;
nr=1;
sp=v[i];
}
}
}
g<<in2<<' '<<fin2<<' '<<sum;
}