Pagini recente » Cod sursa (job #2931858) | Cod sursa (job #1222732) | Cod sursa (job #2111663) | Cod sursa (job #290741) | Cod sursa (job #855412)
Cod sursa(job #855412)
#include<cstdio>
using namespace std;
const int LIM = 50005, MAX = 110000;
int c[LIM];
int main(){
FILE *in=fopen("secv2.in","r"), *out=fopen("secv2.out","w");
int n, max=-MAX, maxa, maxb, l, current=-MAX, ca, clen, mmax=5, mp;
fscanf(in, "%d %d", &n, &l);
clen=0; bool pp=false;
for(int i=1; i<=n; i++){
fscanf(in, "%d", &c[i]); if(c[i]>0) pp=true;
if(!pp&&(mmax==5||mmax<c[i]))
{mmax=c[i]; mp=i;}
if(current<0){
current=c[i];
clen=1;
ca=i;
} else{
current+=c[i];
clen++;
}
if(current>max&&clen>=l){
max=current; maxa=ca; maxb=i;
}
}
if(!pp){
mmax=0;
for(int i=1; i<=l; i++)
mmax+=c[i];
fprintf(out, "%d %d %d\n", 1, l, mmax);
}
else
fprintf(out, "%d %d %d\n", maxa, maxb, max);
return 0;
}