Pagini recente » Cod sursa (job #2368388) | Cod sursa (job #2887224) | Cod sursa (job #1414875) | Cod sursa (job #963639) | Cod sursa (job #2862240)
#include <fstream>
using namespace std;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
const int DIM=50002;
int S[DIM];
int main ()
{
int n,k,x;
fin>>n>>k;
for(int i=1;i<=n;i++)
{
fin>>x;
S[i]=S[i-1]+x;
}
int poz1,poz2,pozmin,minn=1e9;
for(int i=1;i<k;i++)
{
if(S[i]<minn)
{
minn=S[i];
pozmin=i;
}
}
int smax=-1e9;
for(int i=k;i<=n;i++)
{
if(i-pozmin>=k&&S[i]-minn>smax)
{
smax=S[i]-minn;
poz1=pozmin+1;poz2=i;
}
if(S[i]-S[i-k]>smax)
{
smax=S[i]-S[i-k];
poz1=i-k+1;poz2=i;
}
if(S[i]<minn)
{
minn=S[i];
pozmin=i;
}
}
fout<<poz1<<" "<<poz2<<" "<<smax;
return 0;
}