#include <iostream>

using namespace std;

void nizprint(int n, int niz[])
{
    for(int i = 0; i < n; i++)
        cout << niz[i] << " ";
}

void KolicinaAure(int n, int x, int niz[], int k)
{
    int zbir_ostalih;
    int max_aura = niz[0];
    int c = 1;
    for(int i = 1; i < n; i++)
    {
        //cout << "\nKrug " << i << "\n";
        zbir_ostalih = 0;
        for(int j = 0; j < k - 1; j++)
        {
            zbir_ostalih = zbir_ostalih + niz[j + i];
            //cout << niz[j+i]<< " ";
        }
        //cout << " Njihov zbir je "<< zbir_ostalih<<"\n";
        //cout << "\nZbir ostalih je : " << zbir_ostalih;
        if(c < x && zbir_ostalih > 0)
        {
            c += 1;
        }
        max_aura += c * niz[i];
        //cout << " u krugu " << i << " max_aura = " << max_aura << "\n";
    }
    //cout << "Max aura je " << max_aura;
    cout << max_aura << " ";
}

void KolicinaAure_podnizovi(int n, int x, int niz[], int k)
{
    int aure[n - k + 1];
}

void Podnizovi(int n, int x, int niz[], int k)
{
    int podniz[k];
    int broj_podnizova = n - k + 1;
    for(int i = 0; i < broj_podnizova;i++)
    {
        for(int j = 0; j < k ; j++)
        {
            podniz[j] = niz[j + i];
            //cout << "\nJot je " << j + i;
        }

        //cout << "\nPodniz " << i + 1 << " je ";
        //nizprint(k, podniz);
        //cout << "\n";
        KolicinaAure(k, x, podniz, k);
    }
}

int main()
{
    /*
    int zbir_ostalih = 0;
    int primer[] = {4,4,-5};
    for(int i = 1; i < 3 ; i++)
    {
        zbir_ostalih = 0;
        for(int j = i; j < 3; j++)
            zbir_ostalih += primer[j];
        cout << "\n" << zbir_ostalih;
    }
    */


    int n, k, x, max_aura;
    int niz[n];
    cin >> n >> k >> x;
    for(int i = 0; i < n;i++)
        cin >> niz[i];
    /*cout << "\nNiz je: ";
    for(int i = 0; i < n;i++)
        cout << niz[i]<< " ";
    cout << "\n";
    */
    Podnizovi(n , x, niz, k);


    return 0;
}