Cod sursa(job #3126891)
| Utilizator | Data | 7 mai 2023 01:35:58 | |
|---|---|---|---|
| Problema | Deque | Scor | 0 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.51 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
int v[5000010];
int a[5000010];
int main()
{
int N, K, i;
fin>>N>>K;
long int sum=0, st=1, dr=0;
for(i=1;i<=N;i++)
{
for (i=1;i<=N;i++)
{
while (st<=dr && v[i]<=v[a[dr]])
dr--;
a[++dr]=i;
if (a[st] == i-K)
st++;
if (i>=K)
sum += v[a[st]];
}
}
fout<<sum;
fin.close();
fout.close();
return 0;
}