from itertools import accumulate n = int(input()) s, t = map(int, input().split()) a = list(map(int, input().split())) vis = [False] * n vis[s - 1] = True vis[t - 1] = True u = [] i = s - 1 while i != t - 1: if not vis[i]: vis[i] = True u.append(a[i]) i = (i + 1) % n v = [] i = s - 1 while i != t - 1: if not vis[i]: vis[i] = True v.append(a[i]) i = (i - 1) % n base = a[s - 1] - a[t - 1] if len(u) % 2 == 1 and len(v) % 2 == 1: print(base + 2 * max(sum(u[:(len(u) + 1) // 2]) + sum(v[:(len(v)) // 2]), sum(u[:len(u) // 2]) + sum(v[:(len(v) + 1) // 2])) - sum(u) - sum(v)) else: print(base + 2 * (sum(u[:(len(u) + 1) // 2]) + sum(v[:(len(v) + 1) // 2])) - sum(u) - sum(v))