Cod sursa(job #2574022)

Utilizator mihailrazMihail Turcan mihailraz Data 5 martie 2020 20:01:26
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>

using namespace std;
ifstream fi("deque.in");
ofstream fo("deque.out");
const int nmax=5e6;
int n, k;
int X[nmax+5], st[nmax+5], dr[nmax+5];
long long sum;

int main()
{
    fi>>n>>k;
    for(int i=1; i<=n; i++)
    {
        fi>>X[i];
        if(i%k==1)
            st[i]=X[i];
        else
            st[i]=min(st[i-1], X[i]);
    }

    for(int i=n; i>=1; i--)
        if(i%k==1)
            dr[i]=X[i];
        else
            dr[i]=min(dr[i+1], X[i]);

    for(int le=1, ri=k; ri<=n; le++, ri++)
        sum+=min(dr[le], st[ri]);
    fo<<sum;

    fi.close();
    fo.close();
    return 0;
}