#include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct{ int num; int pos; }number; number m[100000]; int cmp(const void*a,const void*b) { number *pa=(number *)a; number *pb=(number *)b; int num1=pa->num; int num2=pb->num; if(num1>num2) { return 1; } else { return -1; } } int main() { int n,i,j; while(scanf("%d",&n)!=EOF) { for(i=0;i<n;i++) { scanf("%d",&m[i].num); m[i].pos=i+1; } qsort(m,n,sizeof(number),cmp); int q; scanf("%d",&q); while(q--) { int l,r; scanf("%d %d",&l,&r); for(i=0;i<n;i++) { if(m[i].pos>=l&&m[i].pos<=r) { printf("%d\n",m[i].num); break; } } } } return 0; } |
Double click to view unformatted code.