Cod sursa(job #1788060)

Utilizator croi01Henry Croitor Jr. croi01 Data 25 octombrie 2016 16:24:18
Problema Secventa 2 Scor 0
Compilator c Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <stdio.h>
#include <stdlib.h>

int main()
{
    int n,i,a,k;
    FILE * fp;
    fp = fopen("ssm.in","r");
    fscanf(fp,"%i",&n);
    fscanf(fp,"%i",&k);
    int sc = 0;
    int sum = 0;
    int left = 0;
    int maxright = 0;
    int maxleft = 0;
    int scmax = -100000;
    for(i = 0;i<n;i++)
    {
        fscanf(fp,"%i",&a);
        sum+=a;
        if(sc < 0)
        {
            sc = 0;
            left = i;
        }
        sc+=a;
        if(sc > scmax && i - left >= k)
        {
            scmax = sc;
            maxright = i;
            maxleft = left;
        }
    }
    fclose(fp);
    fp = fopen("ssm.out","w");
    if(k == n)
    {
        fprintf(fp,"%i 1 %i",n,sum);
    }
    else
    {
        fprintf(fp,"%i %i %i",maxleft+1,maxright+1,scmax);
    }
    fclose(fp);
    return 0;
}