View Code of Problem 134

#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
typedef struct min{
	int a;
	int index;
}m;
bool cmp(m m1,m m2){
	return m1.a<m2.a;
}
int main(){
	int n;
    while(scanf("%d",&n)!=EOF){
    	m m1[n+1]={0};
	 for(int i=1;i<=n;i++){
	 	cin>>m1[i].a;
	 	m1[i].index=i;
	 }
	 sort(m1+1,m1+n+1,cmp);
	 int q;
	 cin>>q;
	 while(q--){
	 	int l,r;
	 	cin>>l>>r;
	 	for(int i=0;i<n;i++){
	 		if(m1[i].index>=l&&m1[i].index<=r){
	 			cout<<m1[i].a<<endl;
	 		break;
			 }
		 }
	 }	 
	}
	return 0;
} 

Double click to view unformatted code.


Back to problem 134