题目描述
给定两个数组 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 数组中数值的取值均小于 100000100000
输出描述
输出匹配的二元组个数
示例一
输入
5
4
1 2 3 4 5
4 3 2 1
1
2
3
4
输出
4
1
说明
若下标从 0 开始,则匹配的二元组分别为(0,3), (1,2), (2,1), (3,0),共计 4 个
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner cin = new Scanner(System.in);
int n = cin.nextInt();
int m = cin.nextInt();
int mp[] = new int[1000005];
for (int i = 0; i < n; i++) {
int x = cin.nextInt();
mp[x]++;
}
int sum = 0;
for (int i = 0; i < m; i++) {
int x = cin.nextInt();
sum+=mp[x];
}
System.out.println(sum);
}
}