Cod sursa(job #2439536)
| Utilizator | Data | 16 iulie 2019 11:46:51 | |
|---|---|---|---|
| Problema | Secventa | Scor | 0 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.63 kb |
#include <fstream>
#include <deque>
#define val first
#define poz second
using namespace std;
ifstream fin("secventa.in");
ofstream fout("secventa.out");
int n,i,k,x,mx=-30001,i1,i2;
deque <pair<int,int> > deq;
int main(){
fin>>n>>k;
for(i=1;i<=n;i++){
fin>>x;
while(deq.size() && x<=deq.back().val)
deq.pop_back();
deq.push_back({x,i});
if(i-deq.front().poz==k)
deq.pop_front();
if(i>=k && deq.front().val>mx){
mx=deq.front().val;
i1=deq.front().poz;
}
}
fout<<i1<<" "<<i1+k-1<<" "<<mx;
return 0;
}
