Cod sursa(job #2148899)

Utilizator grecubogdanGrecu Bogdan grecubogdan Data 2 martie 2018 09:29:37
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.95 kb
#include <fstream>
#include <climits>
using namespace std;
ifstream f("secv2.in");
ofstream g("secv2.out");
int n, k,stanga, indDr, indSt, numarElem;
long long sumMax, sTemp, sumaTotala;
void rezolvare()
{
    f>>n>>k;
    sumMax = INT_MIN;
    stanga = 1;
    for(int i = 1; i<= n; i++)
        {
        int x;
        f>> x;
        sumaTotala = sumaTotala+ x;
        if(sTemp >= 0)
        {
            sTemp = sTemp+ x;
        }
        else
            {
            sTemp = x;
            stanga = i;
        }
        numarElem = i - stanga + 1;
        if(numarElem >= k && sTemp > sumMax)
        {
            sumMax = sTemp;
            indDr = i;
            indSt = stanga;
        }
    }
}
void afisare()
{
    if(k == n)
        {
        g<< "1" <<" "<<n <<" "<< sumaTotala;
        return;
    }
    g<< indSt <<" "<<indDr <<" "<< sumMax;
}
int main()
{
    rezolvare();
    afisare();
    return 0;
}