配点 : 700 点
問題文
長さ N の整数列 (A1,A2,⋯,AN) および (B1,B2,⋯,BN) が与えられます.
$\sum_{1 \leq i < j \leq N} \min(A_i \oplus A_j, B_i \oplus B_j)$ の値を求めてください.
ただしここで,⊕ はビットごとの排他的論理和を表します.
制約
- 1≤N≤250000
- 0≤Ai,Bi<218
- 入力される値はすべて整数である
入力
入力は以下の形式で標準入力から与えられる.
N
A1 A2 ⋯ AN
B1 B2 ⋯ BN
出力
答えを出力せよ.
3
1 2 3
4 5 6
4
- min(1⊕2,4⊕5)=min(3,1)=1
- min(1⊕3,4⊕6)=min(2,2)=2
- min(2⊕3,5⊕6)=min(1,3)=1
よって,答えは 1+2+1=4 になります.
4
1 2 3 4
1 2 3 4
24
10
195247 210567 149398 9678 23694 46151 187762 17915 176476 249828
68649 128425 249346 62366 194119 117620 26327 161384 207 57656
4019496