Pagini recente » Cod sursa (job #2205837) | Cod sursa (job #3316109) | Cod sursa (job #3326794) | Cod sursa (job #3330039) | Cod sursa (job #3317036)
#include <fstream>
using namespace std;
ifstream cin("secv2.in");
ofstream cout("secv2.out");
#define int long long
int sp[50005],mn[50005];
int32_t main()
{
int n,k;
cin>>n>>k;
for (int i=1; i<=n; i++) mn[i]=1000000000;
for (int i=1; i<=n; i++)
{
int x;
cin>>x;
sp[i]=sp[i-1]+x;
mn[i]=min(mn[i-1],sp[i]);
}
int mx=-1000000000000000,df=-1;
for (int i=k; i<=n; i++)
{
if (sp[i]-mn[i-k+1]>mx) {mx=sp[i]-mn[i-k+1]; df=i;}
}
int rmn=1000000000000000,lf=-1;
for (int i=1; i<=df-k+1; i++)
{
if (sp[i]<rmn) {rmn=sp[i]; lf=i;}
}
cout<<lf+1<<" "<<df<<" "<<sp[df]-sp[lf];
}