Cod sursa(job #3142702)

Utilizator Ics.maker09Iancu Cezar-Stefan Ics.maker09 Data 23 iulie 2023 15:31:53
Problema Secventa 2 Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <bits/stdc++.h>
using namespace std;
ifstream f("secv2.in");
ofstream g("secv2.out");
const int nmax = 50005;
int n,k,maxi,mini[nmax],V[nmax],S[nmax],ind[nmax],pozi,pozf;
int main()
{
    f >>n >>k;
    for(int i=1; i<=n;i++)
    {
        f >> V[i];
        S[i]=S[i - 1]+V[i];
    }

    for(int i = 1; i <= n; i ++)
    {
        mini[i]=min(mini[i-1],S[i]);
        if(mini[i]==mini[i-1])ind[i]=ind[i - 1];
        else ind[i]=i;
    }
    maxi=INT_MIN;
    for(int i=k; i<=n;i++)
        if(maxi<S[i] - mini[i - k])
        {
            maxi=S[i]-mini[i-k];
            pozi=ind[i-k]+1;pozf=i;
        }

    g <<pozi<<" "<< pozf<<" "<<maxi;
    return 0;
}