Pagini recente » Cod sursa (job #1047335) | Cod sursa (job #3242017) | Cod sursa (job #829452) | Cod sursa (job #1392653) | Cod sursa (job #2119893)
#include <bits/stdc++.h>
#define int long long
std::ifstream in("secv2.in");
std::ofstream out("secv2.out");
using namespace std;
int n , k;
deque<int>d;
main()
{ int a=1,b=k,x,sum=INT_MIN,actual=0;
int incp=1,sfp;
in >> n>>k;
for(int i =1 ; i<=n ;++i)
{
in >> x ;
if(d.size()<k)
{d.push_back(x);
actual+=x;
}
else{
if( (actual>=0 and actual+x<0) )
{d.clear();
incp=i;
d.push_back(x);
actual=x;
//daca e cazul sa il scot tot
}
else
{
d.push_back(x);
actual+=x;
if(d.size()>k&&d.front()<=0) {actual-=d.front();
d.pop_front();
++incp;
}
}
}if(actual>sum&&d.size()>=k)sum=actual,b=i,a=incp;
//cout << actual << endl;
}
out << a<<" "<<b<<" "<<sum ;
return 0;
}