속이기
시간 제한1초메모리 제한256 MB
수열을 XOR이 같은 두 비어 있지 않은 그룹으로 나누고 첫 번째 그룹의 합을 최대로 만듭니다.
문제
승현이는 남을 속이기를 좋아한다. 오늘은 수열로 우리를 속여 보려고 한다.
승현이가 길이 인 자연수 수열 을 들고 왔다. 그러더니 이 수열의 각 원소를 그룹 X와 그룹 Y 중 한쪽에 넣으라고 한다. X에 들어간 원소를 , Y에 들어간 원소를 라고 하자. 두 그룹 중 어느 쪽도 비어 있으면 안 된다. 즉 이고 이다.
와 가 같으면 승현이가 원을 준다.
승현이에게 하도 속아서 믿기지는 않지만, 돈을 잃을 일은 없으니 한 번 해 보기로 했다. 승현이가 제시한 수열 가 주어질 때 돈을 받을 수 있는지, 받을 수 있다면 최대 얼마를 받을 수 있는지 구하는 프로그램을 작성하라.
는 비트 단위 배타적 논리합(XOR)이다. 두 수를 이진법으로 쓴 다음 자리마다 두 비트가 다르면 1, 같으면 0을 놓아서 얻는 값이다.
입력
첫째 줄에 ()이 주어진다. 둘째 줄에 ()이 공백으로 구분되어 주어진다.
출력
첫째 줄에 받을 수 있는 돈의 최댓값을 출력한다. 돈을 받을 수 없으면 0을 출력한다.