Pagini recente » Cod sursa (job #2570283) | Cod sursa (job #1519908) | Cod sursa (job #2658355) | Cod sursa (job #3247512) | Cod sursa (job #2916231)
#include <bits/stdc++.h>
#pragma GCC optimize("Ofast")
using namespace std;
int n,k;
int v[500001];
bool good(int val)
{
int cnt=0;
for(int i=1; i<=n; i++)
{
if(v[i]>=val)
cnt++;
else
cnt=0;
if(cnt>=k)
return 1;
}
return 0;
}
int cautbin()
{
int r=-30000,pas=1<<15;
while(pas)
{
if(good(r+pas))
r+=pas;
pas/=2;
}
return r;
}
int main()
{
freopen("secventa.in","r",stdin);
freopen("secventa.out","w",stdout);
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
cin>>n>>k;
for(int i=1; i<=n; i++)
cin>>v[i];
int r=cautbin(),cnt=0;
for(int i=1; i<=n; i++)
{
if(v[i]>=r)
cnt++;
else
cnt=0;
if(cnt==k)
{
cout<<i-cnt+1<<" "<<i<<" "<<r;
return 0;
}
}
return 0;
}