Pagini recente » Cod sursa (job #2752159) | Cod sursa (job #1912011) | Cod sursa (job #987905) | Cod sursa (job #1084473) | Cod sursa (job #1261157)
#include <fstream>
#include <deque>
#define DIM 500011
using namespace std;
ifstream f("secventa.in");
ofstream g("secventa.out");
int n,k,nr,p,u;
int v[DIM],q[DIM];
pair<int,int> sol;
//deque<int> q;
int main(void){
register int i,j;
f>>n>>k;
for(i=1;i<=n;i++) f>>v[i],sol.first=min(sol.first,v[i]);
p=u=1;
q[1]=1;
for(i=2;i<=n;i++){
while(v[i]<v[q[u]]) u--;
q[++u]=i;
if(q[p]==i-k) p++;
if(i>=k && v[q[p]]>sol.first)
sol.first=v[q[p]],sol.second=i-k+1;
}
g<<sol.second<<" "<<sol.second+k-1<<" "<<sol.first;
f.close();
g.close();
return 0;
}