시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
2 초 512 MB 27 13 8 38.095%

문제

크기가 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

출처