import sys sys.setrecursionlimit(10 ** 8) from collections import defaultdict n=int(input()) A=list(map(int,input().split())) B=list(map(int,input().split())) D=defaultdict(list) for i,j in zip(A,B): D[i].append(i+j) ans=1 def dfs(x): global ans ans=max(ans,x) for i in D[x]: dfs(i) dfs(1) print(ans)