Mai intai trebuie sa te autentifici.

Cod sursa(job #1557189)

Utilizator geni950814Geni Geni geni950814 Data 26 decembrie 2015 23:03:34
Problema Secventa Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <cstdio>
#include <deque>

using namespace std;

const int MAX = 500000;
int N, K, V[MAX];
deque<int> dq;

int main() {
  freopen("secventa.in", "r", stdin);
  freopen("secventa.out", "w", stdout);
	
  scanf("%d%d\n", &N, &K);
	int min = -30001;
	int end = 0;
	for(int i = 1; i <= N ; i++) {
      scanf("%d", &V[i]);
		while(!(dq.empty()) && V[dq.back()] >= V[i]) {
			dq.pop_back();
		}
		dq.push_back(i);

		if(dq.front() <= i-K) {
			dq.pop_front();
		}

		if(i >= K && min < V[dq.front()]) {
			min = V[dq.front()];
			end = i;
		}
	}
    printf("%d %d %d\n", end - K + 1, end, min);
	return 0;
}