Cod sursa(job #1181884)

Utilizator AndreiBarbutaAndrei Barbuta AndreiBarbuta Data 4 mai 2014 02:48:35
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <cstdio>
#define MAX 50005

using namespace std;

int v[MAX],s[MAX];

int main()
{
    freopen("secv2.in","r",stdin);
    freopen("secv2.out","w",stdout);
    int i,start,val,n,rez,dr,st,k,l;
    scanf("%d%d",&n,&k);
    for(i=1;i<=n;i++){
        scanf("%d",&v[i]);
        s[i]=v[i]+s[i-1];
    }
    val=rez=s[k];
    start=st=1;
    dr=k;
    for(i=k+1;i<=n;i++){
        val=val+v[i];
        if (val<s[i]-s[i-k]) {
            val=s[i]-s[i-k];
            start=i-k+1;
        }
        if (rez<val) {
            rez=val;
            st=start;
            dr=i;}
    }

    printf("%d %d %d",st,dr,rez);
    return 0;
}