Pagini recente » Cod sursa (job #2388904) | Cod sursa (job #786641) | Cod sursa (job #1431210) | Cod sursa (job #260236) | Cod sursa (job #1426185)
#include <deque>
#include <fstream>
using namespace std;
int main(){
ifstream f("secv2.in");
ofstream g("secv2.out");
int n, k;
f >> n >> k;
int suma_scurta = 0, suma_max, start_max, fin_max, suma_lunga, start_lunga;
deque<int> secv(k, 0);
for(auto& x : secv){
f >> x;
suma_scurta += x; }
suma_max = suma_scurta;
start_max = 1;
fin_max = k;
suma_lunga = suma_scurta;
start_lunga = 1;
for(int i = k+1, x; i <= n; ++i){
f >> x;
secv.push_back(x);
suma_scurta += x;
suma_lunga += x;
suma_scurta -= secv.front();
secv.pop_front();
if(suma_lunga < suma_scurta){
suma_lunga = suma_scurta;
start_lunga = i-k+1; }
if(suma_lunga > suma_max){
suma_max = suma_lunga;
start_max = start_lunga;
fin_max = i; } }
g << start_max << ' ' << fin_max << ' ' << suma_max;
return 0; }