Cod sursa(job #1480222)

Utilizator adiXMGemene Adrian adiXM Data 2 septembrie 2015 11:59:33
Problema Secventa 2 Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <fstream>
using namespace std;
const int NMAX=50005;
ifstream f("secv2.in");
ofstream g("secv2.out");
int a[NMAX],s[NMAX],mn[NMAX];
int main()
{
    int n,k;
    f>>n>>k;
    for(int i=1;i<=n;i++)
        f>>a[i];
    for(int i=1;i<=n;i++)
        s[i]=s[i-1]+a[i];
    s[0]=99999;
    for(int i=1;i<=n;i++)
    {
        if(s[i]<s[mn[i-1]])
            mn[i]=i;
        else
            mn[i]=mn[i-1];
    }
    int maax=-999999,dr=0,st=0,j;
    int sol=0;
    for(int i=1;i<=n;i++)
    {
        if(i>=k)
        {
            sol=max(sol,s[i]-s[mn[i-k-1]]);
            dr=i-1;
            st=mn[i-k]+1;
        }
    }
    g<<st<<" "<<dr<<" "<<sol;
    return 0;
}