아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

OR & XOR (Small)

시간 제한2초메모리 제한1024 MB

요약
N^2개의 쌍 가운데 p개의 연산을 XOR에서 OR로 바꿔 전체 합이 최대가 되도록 한다.
난이도

보통10점 중 6점

유형
비트 연산, 그리디, 정렬
정답자
아직 제출이 없습니다

문제

Small 버전에서는 A_iA\_i, B_jB\_j의 상한이 2102^{10}으로 주어진다.

길이가 NN인 수열 A_1,A_2,⋯ ,A_NA\_1, A\_2, \cdots, A\_N, 수열 B_1,B_2,⋯ ,B_NB\_1, B\_2, \cdots, B\_N 과 정수 pp가 주어진다.

∑_i=1N,∑_j=1N,(A_i⊕B_j)\sum\_{i=1}^N\\, \sum\_{j=1}^N\\, (A\_i \oplus B\_j)

⊕\oplus는 Bitwise XOR 연산을 의미한다.

위의 수식을 전개했을 때 나타나는 N2N^{2}개의 Bitwise XOR 연산 중 pp개를 Bitwise OR 연산으로 변경할 때, 가능한 수식의 최댓값을 구하는 프로그램을 작성하시오.

입력

첫째 줄에 정수 NN과 정수 pp가 공백으로 구분되어 주어진다.

둘째 줄에 수열 A_1,A_2,⋯ ,A_NA\_1, A\_2, \cdots, A\_N이 공백으로 구분되어 주어진다.

셋째 줄에 수열 B_1,B_2,⋯ ,B_NB\_1, B\_2, \cdots, B\_N이 공백으로 구분되어 주어진다.

출력

문제에서 요구하는 값을 출력한다.

제한

  • 1≤N≤200 0001 \le N \le 200\ 000
  • 0≤p≤N20 \le p \le N^2
  • 0≤A_i,B_j<2100 \le A\_i, B\_j < 2^{10}
  • A_i,B_jA\_i, B\_j는 정수

예제2

  1. 예제 1

    입력
    4 8
    4 6 1 3
    5 4 1 7
    
    예상 출력
    86
    
  2. 예제 2

    입력
    9 29
    10 7 1 8 0 7 5 5 4
    14 8 8 12 1 4 11 6 0
    
    예상 출력
    791