Pagini recente » Cod sursa (job #1360328) | Cod sursa (job #2247934) | Cod sursa (job #997348) | Cod sursa (job #55120) | Cod sursa (job #669857)
Cod sursa(job #669857)
#include<fstream>
#define nmax 50005
using namespace std;
int a[nmax],sp[nmax],l[nmax],m[nmax];
int main(void){
ifstream fin("secv2.in");
ofstream fout("secv2.out");
int n,k,i,min=0,st,sf,smax=-26000,p=0;
fin>>n>>k;
for(i=1;i<=n;++i){ fin>>a[i]; sp[i]=sp[i-1]+a[i]; if(sp[i]<min){ min=sp[i]; p=i; } m[i]=min; l[i]=p; } fin.close();
if(n==k)fout<<"1 "<<n<<' '<<sp[n];
else
{
for(i=1;i<=n;++i)
if(i-k>0)
if(sp[i]-m[i-k]>smax){
smax=sp[i]-m[i-k];
st=l[i-k]+1;
sf=i;
}
fout<<st<<' '<<sf<<' '<<smax;
}
return 0;
}