Cod sursa(job #1557766)

Utilizator ASTELOTudor Enescu ASTELO Data 28 decembrie 2015 11:41:50
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include<cstdio>
#include<algorithm>
using namespace std;
int i,j,n,m,k,v[50001],smin=-1000000000,poz1,poz2;
int main ()
{
freopen("secv2.in","r",stdin);
freopen("secv2.out","w",stdout);
scanf("%d%d",&n,&k);
for(i=1;i<=n;i++)
    scanf("%d",&v[i]);
int s=0;
for(i=1;i<=k;i++)
    s=s+v[i];
if(s>smin)
    {
    smin=s;
    poz1=1;
    poz2=k;
    }
for(i=k+1;i<=n;i++)
    {
    s=s+v[i]-v[i-k];
    if(s>smin)
        {
        smin=s;
        poz1=i-k+1;
        poz2=i;
        }
    }
s=0;
int poz=1;
for(i=1;i<=n;i++)
    {
    s+=v[i];
    if(i-poz>=k&&s>smin)
        {
        smin=s;
        poz1=poz;
        poz2=i;
        }
    if(s<0)
        {
        s=0;
        poz=i+1;
        }
    }
printf("%d %d %d",poz1,poz2,smin);
return 0;
}