Cod sursa(job #2100750)

Utilizator GiihuoTihufiNeacsu Stefan GiihuoTihufi Data 6 ianuarie 2018 12:04:34
Problema Secventa 2 Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.9 kb
#include <iostream>
#include <fstream>
#include <algorithm>
#include <vector>

using namespace std;

ifstream f("secv2.in");
ofstream g("secv2.out");

vector<long> S;

long SumI(int b,int e)
{
    return S[e]-S[b-1];
}

int main(void)
{
    int N,K;

    f>>N>>K;
    long sum=0;
    int x;
    long smax=-25001,pi=0,pj=N-1;

    S.push_back(sum);
    for(int i=1;i<=N;i++)
    {
        f>>x;
        sum+=x;
        S.push_back(sum);
    }

    for(int i=1;i<=N;i++)
    {
        for(int j=1;j<i-K;j++)
            if(SumI(j,i)>smax)
            {
                smax=SumI(j,i);
                pi=j;
                pj=i;
            }
        for(int j=i+K-1;j<=N;j++)
            if(SumI(i,j)>smax)
            {
                smax=SumI(i,j);
                pi=i;
                pj=j;
            }
    }
    g<<pi<<" "<<pj<<" "<<smax;

    return 0;
}