Cod sursa(job #1356508)
| Utilizator | Data | 23 februarie 2015 14:20:20 | |
|---|---|---|---|
| Problema | Secventa 2 | Scor | 60 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.59 kb |
#include <iostream>
#include<stdio.h>
#include<climits>
using namespace std;
FILE *f,*g;
int v[50002];
int main()
{
int i,k,n,s=0,smax=-INT_MAX,p=0,poz=1,p1,p2;
f=fopen("secv2.in","r");
g=fopen("secv2.out","w");
fscanf(f,"%d %d",&n,&k);
for(i=1;i<=n;i++) fscanf(f,"%d",&v[i]);
for(i=1;i<=n;i++)
{
s+=v[i];
p++;
if(s>smax && p>=k) {smax=s; p1=poz; p2=i;}
if(s<0 && p>=k) {s=0; p=0; i=poz; poz++;}
if(poz==n-k+2) break;
}
fprintf(g,"%d %d %d",p1,p2,smax);
fclose(f);
fclose(g);
return 0;
}
