#include <iostream>
#include <vector>
#include <set>
#include <climits>
using namespace std;
int main() {
long long n,a,b;
cin>>n>>a>>b;
vector<long long> V;
for(long long i=0;i<n;i++)
{
long long x;
cin>>x;
V.push_back(x);
}
long long prefixSum[n+1];
prefixSum[0]=0;
for(long long i=1;i<=n;i++)
{
prefixSum[i] = prefixSum[i-1]+V[i-1];
}
multiset<long long> ms;
for(long long i=a;i<=b;i++)
{
ms.insert(prefixSum[i]);
}
long long maxSum = LLONG_MIN;
for(long long i=1;i<=n-a+1;i++)
{
maxSum = max(maxSum,*ms.rbegin() - prefixSum[i-1]);
ms.erase(ms.find(prefixSum[i+a-1]));
if(i+b <= n)
{
ms.insert(prefixSum[i+b]);
}
//cout<<"maxSum="<<maxSum<<" ms.size()="<<ms.size()<<endl;
}
cout<<maxSum<<endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8c2V0PgojaW5jbHVkZSA8Y2xpbWl0cz4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkgewoKCWxvbmcgbG9uZyBuLGEsYjsKCWNpbj4+bj4+YT4+YjsKCQoJdmVjdG9yPGxvbmcgbG9uZz4gVjsKCWZvcihsb25nIGxvbmcgaT0wO2k8bjtpKyspCgl7CgkJbG9uZyBsb25nIHg7CgkJY2luPj54OwoJCVYucHVzaF9iYWNrKHgpOwoJfQoJbG9uZyBsb25nIHByZWZpeFN1bVtuKzFdOwoJcHJlZml4U3VtWzBdPTA7Cglmb3IobG9uZyBsb25nIGk9MTtpPD1uO2krKykKCXsKCQlwcmVmaXhTdW1baV0gPSBwcmVmaXhTdW1baS0xXStWW2ktMV07Cgl9CgltdWx0aXNldDxsb25nIGxvbmc+IG1zOwoJZm9yKGxvbmcgbG9uZyBpPWE7aTw9YjtpKyspCgl7CgkJbXMuaW5zZXJ0KHByZWZpeFN1bVtpXSk7Cgl9CgoJbG9uZyBsb25nIG1heFN1bSA9IExMT05HX01JTjsKCWZvcihsb25nIGxvbmcgaT0xO2k8PW4tYSsxO2krKykKCXsKCQltYXhTdW0gPSBtYXgobWF4U3VtLCptcy5yYmVnaW4oKSAtIHByZWZpeFN1bVtpLTFdKTsKCQltcy5lcmFzZShtcy5maW5kKHByZWZpeFN1bVtpK2EtMV0pKTsKCQlpZihpK2IgPD0gbikKCQl7CgkJCW1zLmluc2VydChwcmVmaXhTdW1baStiXSk7CgkJfQoJCS8vY291dDw8Im1heFN1bT0iPDxtYXhTdW08PCIgbXMuc2l6ZSgpPSI8PG1zLnNpemUoKTw8ZW5kbDsKCX0KCgljb3V0PDxtYXhTdW08PGVuZGw7CgoJcmV0dXJuIDA7Cn0=