#!/bin/python3 import sys def maximumPeople(p, x, y, r): # Return the maximum number of people that will be in a sunny town after removing exactly one cloud. max_people_so_far = 0 sunshine_locs = x[:] for (cloud_loc, range_colud_loc) in zip(y, r): people_covered_by_cloud_i = 0 for affected_x_of_cloud_i in range(cloud_loc - range_colud_loc, cloud_loc + range_colud_loc + 1): if affected_x_of_cloud_i in x: people_covered_by_cloud_i += p[x.index(affected_x_of_cloud_i)] try: sunshine_locs.remove(affected_x_of_cloud_i) except: pass if max_people_so_far < people_covered_by_cloud_i: max_people_so_far = people_covered_by_cloud_i return max_people_so_far + sum(sunshine_locs) if __name__ == "__main__": n = int(input().strip()) p = list(map(int, input().strip().split(' '))) x = list(map(int, input().strip().split(' '))) m = int(input().strip()) y = list(map(int, input().strip().split(' '))) r = list(map(int, input().strip().split(' '))) result = maximumPeople(p, x, y, r) print(result)