Pagini recente » Cod sursa (job #1880098) | Cod sursa (job #1347005) | Cod sursa (job #446489) | Cod sursa (job #1470198) | Cod sursa (job #1233772)
#include <fstream>
#include <deque>
using namespace std;
typedef struct {
int x, y;
} pereche;
deque<pereche> d;
int n;
int v;
int k;
int maxim;
int main() {
ifstream f("secventa.in");
ofstream g ("secventa.out" );
f>>n>>k;
maxim = -30001;
for (int i = 1; i<=n; ++i) {
f>>v;
while (!d.empty() && v < d.back().x) {
d.pop_back();
}
while (!d.empty() && d.front().y+k<=i) {
d.pop_front();
}
pereche p;
p.x = v;
p.y = i;
d.push_back(p);
if (d.front().x>maxim) {
maxim = d.front().x;
}
}
g<<d.front().y<<" "<<d.back().y<<" "<<maxim;
return 0;
}