Cod sursa(job #2730804)
| Utilizator | Data | 26 martie 2021 21:22:03 | |
|---|---|---|---|
| Problema | Deque | Scor | 0 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.42 kb |
#include <iostream>
#include <fstream>
using namespace std;
int main()
{ifstream fin("deque.in");
ofstream fout("deque.out");
int i,p=0,u=-1;
long long suma=0,n,k;
fin>>n>>k;
k--;
int v[n],poz[n];
for(i=0;i<n;i++)
fin>>v[i];
for(i=0;i<n;i++)
{if(poz[p]==poz[u]-k)
{
suma+=v[poz[p]];
p++;
}
while(p<=u &&v[i]<=v[poz[u]])
u--;
poz[++u]=i;
}
suma+=v[poz[p]];
fout<<suma;
return 0;
}
