Cod sursa(job #1450206)

Utilizator iulianrotaruRotaru Gheorghe-Iulian iulianrotaru Data 11 iunie 2015 20:52:39
Problema Deque Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include <fstream>
#include <queue>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
deque <int> q = deque <int> ();
int n,i,m,mini,poz,a,j;
long long s;
int main()
{
    f>>n>>m; poz=-1;
    for(i=1;i<=n;i++)
    {
        f>>a;
        q.push_back(a);
        if(i>=m)
        {
            if(poz<0)
            {
            mini=32232332;
            for(j=0;j<m;j++) if(mini>q[j]) {mini=q[j]; poz=j;}
            }
            else if(mini>q[m-1]) {mini=q[m-1]; poz=m-1;}
            s=(long long)(s+mini);
            poz--;
            q.pop_front();
        }
    }
    g<<s;
    g.close();
    return 0;
}