Pagini recente » Cod sursa (job #729158) | Cod sursa (job #2352619) | Cod sursa (job #1345268) | Cod sursa (job #1846402) | Cod sursa (job #856208)
Cod sursa(job #856208)
#include<cstdio>
#include<deque>
#include<cstdlib>
#define dim 500001
using namespace std;
int main()
{ freopen("secventa.in","r",stdin);
freopen("secventa.out", "w",stdout);
int v[dim];
std::deque<int> mydeque1;
std::deque<int> mydeque2;
int n,k ;
scanf("%d",&n);
scanf("%d",&k);
for(int i=0;i<n;i++)
scanf("%d",&v[i]);
int m=1;
mydeque1[0]=v[0];
for(int i=1;i<n;i++)
{
if(i>=k)
{
if(i==k)
mydeque2.push_back(mydeque1[0]);
else
if(mydeque2[0]<mydeque1[0])
mydeque2.push_front(mydeque1[0]);
mydeque1.erase(mydeque1.begin(),mydeque1.begin()+1);
m++;
}
if(mydeque1[0]>v[i])
mydeque1.push_front(v[i]);
if(mydeque1[0]<v[i])
mydeque1.push_back(v[i]);
}
printf("%d %d %d", m,m+k-1,mydeque2[0]);
//system("pause");
return 0;
}