package main import . "fmt" import . "os" import bf "bufio" func main() { rd:=bf.NewReader(Stdin) var n int Fscan(rd,&n) xs := make([]int, n) ys := make([]int, n) for i:=0; i< n; i++ { Fscan(rd,&xs[i],&ys[i]) } ans := solve2(n, xs, ys) Println(ans) } func solve(n int, xs, ys []int) int { yxsum, xysum := 0,0 yxlast, xylast := 0, 0 for i := 0; i < n; i++ { x, y := xs[i], ys[i] yxsum += f(x, y) xysum += f(x, y) yxsum, xysum = max(yxsum+f(yxlast, y), xysum+f(xylast,y)), max(yxsum+f(yxlast,x),xysum+f(xylast,x)) yxlast,xylast = x,y } return max(yxsum,xysum) } func f(a, b int) int { if a == b { return a } else { return 0 } } func solve2(n int, xs, ys []int) int { ps := make([]int, 0, n*2) for i := 0; i < n; i++ { ps = append(ps, xs[i], ys[i]) } g := func(i, j int) int { return f(ps[i], ps[j]) } swap := func(i, j int) { ps[i],ps[j]=ps[j],ps[i] } ans := 0 for k := 0; k < 3; k++ { for i := 1; i+1 < n; i++ { a,b,c,d := i*2-1,i*2,i*2+1,i*2+2 if g(a,b)+g(c,d)