#include<stdio.h> typedef struct{ int index; int val; }data; int cmp(const void *a,const void *b){ return (*(data *)a).val - (*(data *)b).val; } int main(){ int n; while(scanf("%d",&n)!=EOF){ data a[n]; int i; for(i = 0;i < n; i++){ scanf("%d",&a[i].val); a[i].index = i+1; } qsort(a,n,sizeof(data),cmp); int q; scanf("%d",&q); while(q--){ int l,r; scanf("%d %d",&l,&r); i = 0; while(!(a[i].index>=l&&a[i].index<=r)){ i++; } printf("%d\n",a[i].val); } } } |
Double click to view unformatted code.