#ATarc127d. [ARC127D] Sum of Min of Xor

[ARC127D] Sum of Min of Xor

题目描述

给定两个长度为 NN 的整数序列 (A1,A2,,AN)(A_1, A_2, \cdots, A_N)(B1,B2,,BN)(B_1, B_2, \cdots, B_N)

请计算 $\sum\_{1 \leq i < j \leq N} \min(A\_i \oplus A\_j, B\_i \oplus B\_j)$ 的值。其中,\oplus 表示按位异或运算。

输入格式

输入以如下格式从标准输入读入。

NN A1A_1 A2A_2 \cdots ANA_N B1B_1 B2B_2 \cdots BNB_N

输出格式

请输出答案。

样例 1

输入

3
1 2 3
4 5 6

输出

4

样例 2

输入

4
1 2 3 4
1 2 3 4

输出

24

样例 3

输入

10
195247 210567 149398 9678 23694 46151 187762 17915 176476 249828
68649 128425 249346 62366 194119 117620 26327 161384 207 57656

输出

4019496

说明/提示

限制条件

  • 1N2500001 \leq N \leq 250000
  • 0Ai,Bi<2180 \leq A_i, B_i < 2^{18}
  • 输入的所有值均为整数。

样例解释 1

  • min(12,45)=min(3,1)=1\min(1 \oplus 2, 4 \oplus 5) = \min(3, 1) = 1
  • min(13,46)=min(2,2)=2\min(1 \oplus 3, 4 \oplus 6) = \min(2, 2) = 2
  • min(23,56)=min(1,3)=1\min(2 \oplus 3, 5 \oplus 6) = \min(1, 3) = 1 因此,答案为 1+2+1=41 + 2 + 1 = 4

由 ChatGPT 4.1 翻译