Pagini recente » Cod sursa (job #3128942) | Cod sursa (job #2226791) | Cod sursa (job #1543177) | Cod sursa (job #1320820) | Cod sursa (job #2676348)
#include <fstream>
#include <deque>
#include <utility>
#include <climits>
using namespace std;
deque < pair <int,int> > Q;
ifstream fin("secventa.in");
ofstream fout("secventa.out");
int main()
{
ios_base::sync_with_stdio(false);
fin.tie(NULL);
fout.tie(NULL);
int n,k,i,x,minx,start,endx;
fin>>n>>k;
minx=INT_MIN;
for(i=1;i<=n;i++)
{
fin>>x;
while(!Q.empty() and Q.back().first>x)
Q.pop_back();
Q.push_back(make_pair(x,i));
if(!Q.empty() and Q.front().second<=i-k)
Q.pop_front();
if(Q.front().first>minx and i>=k){
minx=Q.front().first;
start=i-k+1;
endx=i;
}
}
fin.close();
fout<<start<<" "<<endx<<" "<<minx;
fout.close();
return 0;
}