Pagini recente » Cod sursa (job #557083) | Cod sursa (job #712402) | Cod sursa (job #1386226) | Cod sursa (job #2690795) | Cod sursa (job #290802)
Cod sursa(job #290802)
#include<algorithm>
using namespace std;
#define DIM 500001
#define INF -1000001
int n,k,q[DIM];
short a[DIM];
void solve(){
int i,st,dr,poz,sol;
scanf("%d%d",&n,&k);
for(i=1; i<=n; ++i)
scanf("%d",&a[i]);
for(i=st=1,dr=0; i<k; ++i){
for(; dr>=st&&a[i]<=a[q[dr]]; --dr);
q[++dr]=i;}
for(i=k,sol=INF; i<=n; ++i){
for(; st<=dr&&a[i]<=a[q[dr]]; --dr);
q[++dr]=i;
for(; st<=dr&&q[st]<i-k+1; ++st);
if(a[q[st]]>sol){
sol=a[q[st]];
poz=i;}}
printf("%d %d %d",poz-k+1,poz,sol);}
int main(){
freopen("secventa.in","r",stdin);
freopen("secventa.out","w",stdout);
solve();
return 0;}