Cod sursa(job #3199981)

Utilizator MorariuTMorariu MorariuT Data 3 februarie 2024 10:19:41
Problema Deque Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.35 kb
#include <algorithm>
#include <bitset>
#include <cstdio> 
#include <complex>
#include <deque>
#include <exception>
#include <fstream>
#include <functional>
#include <iomanip>
#include <ios>
#include <iosfwd>
#include <iostream>
#include <istream>
#include <iterator>
#include <limits.h>
#include <list>
#include <locale>
#include <map>
#include <memory>
#include <new>
#include <numeric>
#include <ostream>
#include <queue>
#include <set>
#include <sstream>
#include <stack>
#include <stdexcept>
#include <streambuf>
#include <string>
#include <typeinfo>
#include <utility>
#include <valarray>
#include <vector> 

using namespace std;
 
#define fast_cin() ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL)
#define endl '\n'
#define int long long

void debug(vector<int> v)
{
    for(int i = 0;i < (int)v.size();i++) {cout << v[i] << ' ';}
    cout << endl;
}
ifstream fin("deque.in");
ofstream fout("deque.out");


signed main()
{
    int n, k; fin >> n >> k;

    deque<int> q;

    for(int i = 0;i < n;i++)
    {
        int nr; fin >> nr;
        int it = q.size() - 1;
        int pasi = 0;
        
        while(it > 0 and pasi < k - 1 and q[it] > nr)
        {
            q[it--] = nr;
            pasi++;
        }

        q.push_back(nr);
    }
    int ans = 0;
    for(int i = 0;i <= q.size() - k;i++) ans += q[i];
    fout << ans << endl;

    

	return 0;
}