Pagini recente » Monitorul de evaluare | Cod sursa (job #1181768) | Cod sursa (job #2032085) | Cod sursa (job #2565079) | Cod sursa (job #305089)
Cod sursa(job #305089)
#include<stdio.h>
#include<values.h>
long n,x,i,s,k,smax=-MAXLONG,iz,sz,sumaz=-MAXLONG,is,im,sfm;
int main()
{
freopen("secv2.in","r",stdin);
freopen("secv2.out","w",stdout);
scanf("%ld%ld%ld",&n,&k,&x);
if(n==k)
{
sumaz=x;
for(i=2;i<=n;++i)
{
scanf("%ld",&x);
sumaz+=x;
}
iz=1;
sz=n;
}
else
{
s=smax=x;
is=im=sfm=1;
for(i=2;i<=n;++i)
{
scanf("%ld",&x);
if(s+x>=x)
s+=x;
else
{
s=x;
is=i;
}
if(s>smax)
{
smax=s;
im=is;
sfm=i;
}
if(((sfm-im+1)>=k)&& smax>=sumaz)
{
sumaz=smax;
sz=sfm;
iz=im;
}
}
}
printf("%ld %ld %ld\n",iz,sz,sumaz);
return 0;
}