Pagini recente » Cod sursa (job #290107) | Cod sursa (job #1052588) | Cod sursa (job #106477) | Cod sursa (job #1102333) | Cod sursa (job #538902)
Cod sursa(job #538902)
#include <fstream.h>
#define N 5000001
ifstream fin("secventa.in");
ofstream fout("secventa.out");
int n,k,s[N],deque[N],first,last,pi,pf,baza;
int main(){
int i,j;
fin>>n>>k;
for (i=1; i<=n; i++)
fin>>s[i];
baza = -30001;
pi = -1;
pf = -1;
first = 1;
last = 0;
for (i=1; i<=n; i++){
while ( first <= last && s[deque[last]] >= s[i]) last--;
deque[++last] = i;
if (deque[first] == i-k)
first++;
if (i >= k && s[deque[first]] > baza){
baza = s[deque[first]];
pi = i-k+1;
pf = i;
}
}
fout<<pi<<" "<<pf<<" "<<baza;
return 0;
}