Cod sursa(job #2133948)

Utilizator DimaTCDima Trubca DimaTC Data 17 februarie 2018 14:41:20
Problema Secventa Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include<bits/stdc++.h>
#define pf push_front
#define pb push_back

using namespace std;

int n,k,mn,p,x;
deque<int>Q;

int main(){
	ifstream cin("secventa.in");
	ofstream cout("secventa.out");
	cin>>n>>k;
	
	for (int i=1; i<=k; i++) {
		cin>>x;
		Q.pb(x);
		while (Q.size()>1 && Q.back()<=Q.front()) Q.pop_front();
	}
	mn=Q.front(); p=k;
	for (int i=k+1; i<=n; i++) {
		cin>>x;
		Q.pb(x);
		if (Q.size()>k) Q.pop_front();
		while (Q.size()>1 && Q.back()<=Q.front()) Q.pop_front();
		if (Q.front()>mn) { 
			mn=Q.front(); p=i;
		}
	}
	cout<<p-k+1<<" "<<p<<" "<<mn;
	
	return 0;
}