Cod sursa(job #1356535)

Utilizator geo_furduifurdui geo geo_furdui Data 23 februarie 2015 14:30:24
Problema Secventa 2 Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 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,j;
    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=1;
        poz=i;
        for(j=i+1;j<=n;j++)
        {
            s=s+v[j];
            p++;
            if(s>smax && p>=k) {smax=s; p1=poz; p2=j;}
            if(p>=k && s<0) {s=0; p=0; poz=j;}
        }
    }
    fprintf(g,"%d %d %d",p1,p2,smax);
    fclose(f);
    fclose(g);
    return 0;
}