Pagini recente » Cod sursa (job #1549588) | Cod sursa (job #2713739) | Cod sursa (job #2433580) | Cod sursa (job #1520773) | Cod sursa (job #1572524)
#include <fstream>
#include <deque>
using namespace std;
ifstream f("secventa.in" );
ofstream g("secventa.out");
int N, K, V[500001];
deque<int> coada;
int main() {
f >> N >> K;
int min = -30001;
int end = 0;
for(int i = 1; i <= N ; i++)
{
f >> V[i];
while(!(coada.empty()) && V[coada.back()] >= V[i]) coada.pop_back();
coada.push_back(i);
if(coada.front() <= i-K) coada.pop_front();
if(i >= K && min < V[coada.front()])
{
min = V[coada.front()];
end = i;
}
}
g<<end-K+1<<" "<<end<<" "<<min;
return 0;
}