Cod sursa(job #2366732)

Utilizator stefan.alex2002Stefan Alexandrescu stefan.alex2002 Data 4 martie 2019 21:50:43
Problema Secventa 2 Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <cstdio>

using namespace std;

int s[50005],n,v[500005];
FILE *f,*g;

int main()
{
    int mx,i,j,a,k,p1,p2;

    f=fopen("secv2.in","r");
    g=fopen("secv2.out","w+");

    setvbuf(f,NULL,_IOFBF,1024);

    fscanf(f,"%d %d",&n,&k);

    for(i=1; i<=n; i++)
    {
        fscanf(f,"%d",&v[i]);
        s[i]=s[i-1]+v[i];
        if(i==k)
            mx=s[i],p2=i;
        else if(i>k&&s[i]>mx)
            mx=s[i],p2=i;
    }
    p1=1;
    a=mx-s[p2-k];
    if(a>mx)
        mx=a,p1=p2-k+1;
    for(i=p2-k;i>=1;i--)
    {
        a+=v[i];
        if(a>mx)
            mx=a,p1=i;
    }
    fprintf(g,"%d %d %d\n",p1,p2,mx);
    fclose(f);
    fclose(g);
    return 0;
}