Module: 동적 프로그래밍의 패턴


Problem

2 /7


컴포트 라이드 맥스

Problem

Max는 기차의 출발역에 있고 이제 n명의 사람들(Max 자신 포함)이 기차에 오르고 싶어합니다. 그들은 이미 어떤 순서로 줄을 섰고, 그들 각자는 그들이 가고 있는 지역 코드 ai를 알고 있습니다.

열차의 책임자는 원래 사람들의 순서에서 교차하지 않는 특정 수의 세그먼트를 선택합니다(세그먼트가 전체 시퀀스를 포함할 필요는 없음). 같은 구간에 있는 사람들은 같은 열차에 탑승하게 됩니다. 세그먼트는 적어도 한 사람이 X 도시로 이동하는 경우 X 도시로 이동하는 모든 사람이 같은 차량에 있어야 하도록 선택됩니다. 즉, 서로 다른 세그먼트에 속할 권리가 없습니다. X 도시에 가는 모든 사람들은 X 도시에 가서 같은 차에 있거나 아무데도 가지 않는다는 점에 유의해야 합니다.

l에서 r까지의 구간에 있는 사람들과 함께 기차를 타고 여행하는 편안함은 l에서 r까지의 구간에 있는 사람들에 대한 서로 다른 도시 코드의 XOR과 같습니다. XOR 연산은 비트 배타적 OR이라고도 합니다.

선택한 구간의 전반적인 편안함은 각 개별 구간의 편안함의 합으로 계산됩니다.

Max가 달성 가능한 최대의 전반적인 편안함을 찾도록 도와주세요.

입력:
첫 번째 줄에는 사람 수인 자연수 n이 포함됩니다.
두 번째 줄은 n개의 정수 ai (0 <= ai <= 5000) - i번째 사람이 갈 도시의 코드를 포함합니다.< br />
출력:
하나의 정수를 인쇄하십시오 - 최대의 전반적인 편안함.

예:
  <몸>
입력 출력
6
4 4 2 5 2 3
14
9
5 1 3 1 5 2 4 2 5
9