Cod sursa(job #3373755)

Utilizator ractanuMicu David Andrei ractanu Data 7 noiembrie 2026 19:50:03
Problema Deque Scor 20
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.98 kb
#include <iostream>
#include <fstream>
#include <deque>
#include <algorithm>
using namespace std;

ifstream fin ("deque.in");
ofstream fout ("deque.out");

int main()
{
    int n, k;
    
    fin >> n >> k;
    
    int v[n+1];
    
    for (int i=1; i<=n; i++){
        
        fin >> v[i];
    }
    
    int valoare=k, m=0;
    
    long long s=0;
    
    deque <int> d;
    
    d.push_front(v[1]);
    
    for (int i=2; i<=k-1; i++){
        
        if(v[i] > d.front()){
            
            d.push_back(v[i]);
        }
        
        else{
            
            d.push_front(v[i]);
        }
    }
    
    while(m<n-k+1){
    
    if(v[valoare] > d.front()){
       
        d.push_back(v[valoare]);
    }
  
    else{
        
        d.push_front(v[valoare]);
    }
    
    sort(d.begin(), d.end());
    
    valoare++;
    
    s+=d.front();
    
    m++;
    
    auto it = find(d.begin(), d.end(), v[m]);
    
    d.erase(it);
    
    }
    
    fout << s;
    

    return 0;
}