Cod sursa(job #165023)
Utilizator | Sebastian Crisan c_sebi | Data | 25 martie 2008 09:11:35 |
---|---|---|---|
Problema | Secventa 2 | Scor | 50 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.56 kb |
#include <fstream.h>
#define nmax 5000
long a[nmax], sum[nmax], n, k, sm, Max=-2000000000, min, pi, pzi, pf;
int main(){
ifstream f("secv2.in");
ofstream g("secv2.out");
f>>n>>k;
int i;
for(i=1; i<=n; i++){
f>>a[i];
sum[i] = sum[i-1] + a[i];
}
pzi=1;
for(i=k; i<=n; i++){
sm = sum[i] - min;
if(sm > Max) Max = sm, pi=pzi, pf=i;
if(sum[i-k] < min) min = sum[i-k], pzi=i-k+1;
}
g<<pi<<" "<<pf<<" "<<Max<<"\n";
f.close();
g.close();
return 0;
}