시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 512 MB109242422.857%

문제

크기가 N인 배열 V와 크기가 M인 배열 V를 이용해서 크기가 N×M인 행렬 A를 만들 수 있다. 이때, Aij = Vi xor Uj 이다.

A의 부분 행렬 중에서, 부분 행렬에 포함된 원소를 모두 xor한 값이 가장 큰 것을 구하는 프로그램을 작성하시오.

입력

첫째 줄에 배열의 크기 N과 M이 주어진다. 둘째 줄에는 V1, V2, ..., VN이, 셋째 줄에는 U1, U2, ..., UM이 주어진다.

출력

A의 부분 행렬 중에서, 부분 행렬에 포함된 원소를 모두 xor한 값이 가장 큰 것을 출력한다.

제한

  • 1 ≤ N, M ≤ 1,000
  • 0 ≤ Vi, Uj < 229

예제 입력 1

3 4
5 3 1
2 1 2 4

예제 출력 1

7

예제 입력 2

3 3
10 12 4
5 10 9

예제 출력 2

15

예제 입력 3

3 3
1 2 1
4 2 8

예제 출력 3

15

출처