Cod sursa(job #1808527)

Utilizator martonsSoos Marton martons Data 17 noiembrie 2016 19:58:04
Problema Secventa 2 Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <fstream>
#define INF ((1<<30)-1)

using namespace std;

int n, k, v[50005];

int bs=0, be=0, bsum=-INF;
int main()
{
    ifstream in("secv2.in");
    in>>n>>k;

    for(int i=0;i<n;i++){
        in>>v[i];
    }

    int s=0, sum=0;
    for(int i=0;i<n;i++){
        if(i<k-1){
            sum+=v[i];
        }
        else {
            if(i - s + 1 > k && sum + v[i] <= sum - v[s] + v[i]){
                sum -= v[s];
                s++;
            }
            sum+= v[i];

            if(sum>bsum){
                bs = s+1;
                be = i+1;
                bsum = sum;
            }
        }
    }

    ofstream out("secv2.out");

    out<<bs<<" "<<be<<" "<<bsum;
    return 0;
}