一、题目描述
给定两个数组A和B,若数组A的某个元素A[i]与数组B中的某个元素B[j]满足 A[i] == B[j], 则寻找到一个值匹配的二元组(i, j). 请统计在这两个数组A和B中,一共存在多少个这样的二元组。
二、输入描述
- 第一行输入数组A的长度M;
- 第二行输入数组B的长度N;
- 第三行输入数组A的值;
- 第四行输入数组B的值。
1 <= M, N <= 100000
A, B数组中数值的取值均小于100000;
三、输出描述
输出匹配的二元组个数。
四、补充说明
若不存在相等的值,则输出0. 所采用的算法复杂度需小于O(N^2),否则会超时。输入数组中允许出现重复数字,一个数字可以匹配多次。
五、解题思路
这道题完全就是送分题,一定要好好把握,必须满分通过。
- 定义变量M,记录数组A的长度;
- 定义变量N,记录数组B的长度;
- 通过Java8的Stream表达式,获取数组a和数组b;