Cod sursa(job #1480226)

Utilizator adiXMGemene Adrian adiXM Data 2 septembrie 2015 12:05:57
Problema Secventa 2 Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 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)
            if(s[i]-s[mn[i-k]]>maax)
            {
                maax=s[i]-s[mn[i-k]];
                dr=i;
                st=mn[i-k]+1;
            }
    }
    g<<st<<" "<<dr<<" "<<maax;
    return 0;
}