Pagini recente » Cod sursa (job #2974565) | Cod sursa (job #429257) | Cod sursa (job #1518686) | Cod sursa (job #457607) | Cod sursa (job #2031667)
#include <bits/stdc++.h>
using namespace std;
ifstream in("secventa.in");
ofstream out("secventa.out");
int n,k;
int v[500005];
pair<int,int> srt[500005];
int st,dr,ans;
bool cmp(pair<int,int> a, pair<int,int> b)
{
if(a.second==b.second)
return a.first<b.first;
return a.second<b.second;
}
int main()
{
in>>n>>k;
for(int i=1; i<=n; i++)
{
in>>v[i];
srt[i].second=v[i];
srt[i].first=i;
}
sort(srt+1,srt+n+1,cmp);
for(int i=n; i>=1; i--)
{
int mini=srt[i].second;
st=srt[i].first;
dr=srt[i].first;
while(st>=1 && mini<=v[st]) st--;
while(dr<=n && mini<=v[dr]) dr++;
st++; dr--;
if(dr-st+1>=k)
{
out<<st<<' '<<dr<<' '<<mini<<'\n';
return 0;
}
}
return 0;
}