编程题
### 问题描述
七萤正在玩解谜游戏。他获得了两个数字序列,每个序列包含了 $N$ 个正整数。如果第一个序列中的数字 $a_i$ 与第二个序列中的数字 $b_j$ 的最大公约数(Greatest Common Divisor)的二进制形式构成回文串,那么这两个位置($i,j$) 便构成一个奇特的位置数对。例如,某两个位置上的数字的最大公约数为 $5$,对应二进制形式为 $101$,构成回文串。而 $6$ 的二进制形式为 $110$,不构成回文串。
请你帮他求出,两个序列最多可以构成多少个不同的奇特的位置数对。
### 输入格式
第一行一个正整数 $N$,含义如上所述。
第二行 $N$ 个以空格隔开的正整数 $a_i$,表示第一个序列中的第 $i$ 个数字。
第三行 $N$ 个以空格隔开的正整数 $b_i$,表示第二个序列中的第 $i$ 个数字。
### 输出格式
一个正整数,表示可以构成的不同的奇特的位置数对的数量。
### 样例输入
```text
2
5 6
10 12
```
### 样例输出
```text
2
```
### 说明
在样例中,满足条件的位置数对有:`(1,1)`,`(1,2)`。
### 评测数据规模
对于 $50$% 的评测数据,$1 \leq N\leq 10^{2}$,$1 \leq a_i,b_i \leq 10^{6}$。
对于 $100$% 的评测数据,$1 \leq N\leq 10^{3}$,$1 \leq a_i,b_i \leq 10^{18}$。