Cod sursa(job #2086297)

Utilizator Mihai145Oprea Mihai Adrian Mihai145 Data 11 decembrie 2017 20:09:47
Problema Secventa 2 Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <bits/stdc++.h>
using namespace std;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
int n, k, sp[50002], mini[50002], st[50002], maxi;
int main()
{
    int i, x, stk, drk;
    fin>>n>>k;
    fin>>sp[1];
    mini[1]=sp[1];
    st[1]=1;
    for(i=2; i<=n; i++)
    {
        fin>>x;
        sp[i]=sp[i-1]+x;
        if(sp[i]<mini[i-1])
            mini[i]=sp[i], st[i]=i;
        else mini[i]=mini[i-1], st[i]=st[i-1];
    }
    for(i=k; i<=n; i++)
        {
            x=sp[i]-mini[i-k];
            if(x>maxi)
            {
                maxi=x;
                stk=st[i-k]+1;
                drk=i;
            }
        }
    fout<<stk<<' '<<drk<<' '<<maxi<<'\n';
    return 0;
}