package main import . "fmt" import . "sort" func main() { var n int Scan(&n) ab := make([][]int, n) for i := range ab { ab[i] = make([]int, 2) Scan(&ab[i][0]) } for i := range ab { Scan(&ab[i][1]) } Slice(ab, func(i, j int) bool { return ab[i][0] < ab[j][0] }) r := make([]bool, 5e5*2+1) r[1] = true ans := 1 for _, vs := range ab { if !r[vs[0]] { continue } h := vs[0]+vs[1] r[h] = true if h > ans { ans = h } } Println(ans) }