Pagini recente » Cod sursa (job #1881546) | Cod sursa (job #1855487) | Cod sursa (job #75748) | Cod sursa (job #1839802) | Cod sursa (job #23330)
Cod sursa(job #23330)
#include <stdio.h>
#include <math.h>
#include <values.h>
int a[5000],n,k,st=0,dr;
long smax;
long max(long value1,long value2){
if(value1>value2) return value1;
else return value2;
}
void citire(){
int i;
FILE *in;
in=fopen("secv2.in","r");
fscanf(in,"%d %d",&n,&k);
dr=k;
for(i=0;i<n;i++){fscanf(in,"%d",&a[i]);
}
}
long sum(int st1,int dr1){
long s=0;
int i;
for(i=st1;i<=dr1;i++){s+=a[i];
}
return s;
}
long procesare(int st,int dr){
int i;
/*
for(i=0;i<n-k;i++){if(sum(st,dr)>}*/
if(dr<n&&st<=dr-k) {return max(max(procesare(st,dr+1),procesare(st+1,dr)),procesare(st+1,dr+1)); }
return sum(st,dr);
}
void scriere(){
FILE *out;
out=fopen("secv2.out","w");
fprintf(out,"%d %d %ld",st,dr,smax);
fclose(out);
}
int main(){
citire();
st=0;
smax=-2000000000;
dr=k;
smax=procesare(st,dr);
scriere();
return 0;
}