Cod sursa(job #2758440)

Utilizator SenoritaMadalina Chirpicinic Senorita Data 10 iunie 2021 14:34:10
Problema Secventa Scor 80
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <fstream>
#include <deque>
//#define fx first
//#define sx second
//#define pb push_back
//typedef long long ll;
//const int Max = 100006;
//const int Inf = 2e9;
//const int MOD = 666013;
using namespace std;

ifstream in("secventa.in");
ofstream out("secventa.out");

int main() {
	
	int n, k;
	deque <int> q;
	in >> n >> k;
	int a[n+1];
	int mn_ans = -2e9, r = k;
	for (int i=1; i<=n; i++) {
//		read(a[i]);
		in >> a[i];
//		add_in(a[i]);
		while (!q.empty() && q.back() > a[i]) q.pop_back();
		q.push_back(a[i]);	
		if (i > k) {
//			remove(a[i-k]);
			if (q.front() == a[i-k]) q.pop_front();
		}
		if (!q.empty() && i >= k && q.front() > mn_ans) {
			mn_ans = q.front();
			r = i;
		}
	}
	out << r - k + 1 << " " << r << " " << mn_ans << "\n";
	
	return 0;
}