#include <iostream> #include <cstdio> #include <cmath> #include <algorithm> #include <cstring> #include <string> using namespace std; int A[100005],B[100005]; int search(int L1,int R1,int L2,int R2,int K) { if (L1>R1) return B[L2+K-1]; if (L2>R2) return A[L1+K-1]; int midA=(L1+R1)/2; int midB=(L2+R2)/2; int midAnum=midA-L1+1; int midBnum=midB-L2+1; if (A[midA]<B[midB]) { if (K>=midAnum+midBnum) return search(midA+1,R1,L2,R2,K-midAnum); else return search(L1,R1,L2,midB-1,K); } else { if (K>=midAnum+midBnum) return search(L1,R1,midB+1,R2,K-midBnum); else return search(L1,midA-1,L2,R2,K); } } int main() { int N,M,Q; scanf("%d%d%d",&N,&M,&Q); int i; for (i=0;i<=N-1;i++) scanf("%d",&A[i]); for (i=0;i<=M-1;i++) scanf("%d",&B[i]); for (i=0;i<=Q-1;i++) { int L1,R1,L2,R2,K; scanf("%d%d%d%d%d",&L1,&R1,&L2,&R2,&K); printf("%d\n",search(L1,R1,L2,R2,K)); } return 0; }