Cod sursa(job #2574549)

Utilizator yo_andrei_2003Murica Andrei yo_andrei_2003 Data 5 martie 2020 23:42:41
Problema Deque Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.91 kb
#include <cstdio>
#include <deque>
using namespace std;
deque <pair<long long,long long> > v;
int main()
{
    long long n, i, t=0, a, k;
    FILE *fin, *fout;
    fin=fopen("deque.in" ,"r");
    fout=fopen("deque.out" ,"w");
    fscanf(fin, "%lld%lld" ,&n ,&k);
    for (i=0;i<k;i++) {
        fscanf(fin, "%lld" ,&a);
        while (!v.empty() && a<=v.front().first) {
            v.pop_front();
        }
        v.push_front(make_pair(a, i));
    }
    t=v.back().first;
    for (i=i;i<n;i++) {
        fscanf(fin, "%lld" ,&a);
        if (v.back().second+k<=i) {
            v.pop_back();
        }
        while (!v.empty() && a<=v.front().first) {
            v.pop_front();
        }
        v.push_front(make_pair(a, i));
           // fprlong longf(fout, "%d " ,t);
        t+=v.back().first;
        //fprlong longf(fout, "%d\n" ,t);
    }
    fprintf(fout, "%lld" ,t);
    return 0;
}