Pagini recente » Cod sursa (job #2926188) | Cod sursa (job #1413891) | Cod sursa (job #1780399) | Cod sursa (job #1709663) | Cod sursa (job #1024713)
#include <cstdio>
#include <queue>
using namespace std;
struct sec
{
int a;
int b;
bool operator<(const sec &x) const
{
if(a>x.a)return true;
else return false;
}
};
priority_queue<sec>v;
sec a;
bool v1[500010];
int n,k,i,x1,x2,sol,x;
int main()
{
freopen("secventa.in", "r", stdin);
freopen("secventa.out", "w", stdout);
scanf("%d%d",&n,&k);
for(i=1;i<=k;i++)
{
scanf("%d",&x);
a.a=x;
a.b=i;
v.push(a);
}
x1=1;x2=k;sol=v.top().a;
for(i=k+1;i<=n;i++)
{
scanf("%d",&x);
a.a=x;
a.b=i;
v.push(a);
v1[i-k]=1;
while(v1[v.top().b])
{
v.pop();
}
if(sol<v.top().a)
{
sol=v.top().a;
x1=i-k+1;
x2=i;
}
}
printf("%d %d %d",x1,x2,sol);
fclose(stdin);fclose(stdout);
return 0;
}