#include #include #include #include #include #include #include long int maximumPeople(int n,long int *p,long int *x,int m,long int *y,long int *r) { long int ans=0; long int ca[100000]={0}; for(int i=0;i=(y[i]-r[i]) && x[j]<=(y[i]+r[i])) { ca[i] += p[i]; } } } int maxx=INT_MIN; for(int i=0;i maxx) maxx=ca[i]; } ans += maxx; return ans; } int main() { int n; scanf("%i", &n); long int *p = malloc(sizeof(long int) * n); for (int p_i = 0; p_i < n; p_i++) { scanf("%li",&p[p_i]); } long int *x = malloc(sizeof(long int) * n); for (int x_i = 0; x_i < n; x_i++) { scanf("%li",&x[x_i]); } int m; scanf("%i", &m); long int *y = malloc(sizeof(long int) * m); for (int y_i = 0; y_i < m; y_i++) { scanf("%li",&y[y_i]); } long int *r = malloc(sizeof(long int) * m); for (int r_i = 0; r_i < m; r_i++) { scanf("%li",&r[r_i]); } long int result = maximumPeople(n,p,x,m,y,r); printf("%ld\n", result); return 0; }