Cod sursa(job #1475036)

Utilizator DavidDragulinDragulin David DavidDragulin Data 23 august 2015 15:09:56
Problema Deque Scor 25
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
#include <fstream>
#include <iostream>

using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
struct mic
{
    int ind,nr;
}a[5000002];
mic x;
int n,k,c1,c2,i,p,s;
int main()
{
    fin>>n>>k;
    c1=1;
    c2=1;
    fin>>a[1].nr;
    a[1].ind=1;
    for(i=2;i<=n;i++)
    {
        fin>>x.nr;
        x.ind=i;
        for(;c2>=c1&&x.nr<=a[c2].nr;c2--);
        c2++;
        a[c2].nr=x.nr;
        a[c2].ind=x.ind;
        for(;c1<=c2&&a[c2].ind-k>=a[c1].ind;c1++);
        if(i>=k)
        {
            s+=a[c1].nr;
            cout<<a[c1].nr<<" ";
        }
    }
    fout<<s;


    fin.close();
    fout.close();
    return 0;
}