Cod sursa(job #1367759)

Utilizator MarronMarron Marron Data 2 martie 2015 08:14:45
Problema Deque Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include <iostream>
#include <fstream>
#include <set>


typedef long long int64;


const int MAXN = 5000005;
std::ifstream f("deque.in");
std::ofstream g("deque.out");
int n, k;
int a[MAXN];
std::multiset<int> mst;


int main()
{
	f >> n >> k;
	for (int i = 1; i <= n; i++) {
		f >> a[i];
	}

	for (int i = 1; i < k; i++) {
		mst.insert(a[i]);
	}

	int64 sol = 0;
	for (int i = k; i <= n; i++) {
		mst.insert(a[i]);
		sol += 1LL * *mst.begin();
		mst.erase(mst.find(a[i - k + 1]));
	}
	g << sol << std::endl;


	//system("pause");
	f.close();
	g.close();
	return 0;
}