题目描述
输入 𝑛n 个正整数 𝑎𝑖,利用hash方法对这些数据进行统计。
𝑞q 次询问,每次查询一个数字 𝑥 ,请回答 𝑥 在这 𝑛 个数中出现的次数。
输入格式
第一行:两个正整数 𝑛 (𝑛≤100000) 和 𝑞 (𝑞≤100000)
第二行: 𝑛n 个正整数 𝑎𝑖 (𝑎𝑖≤1000)
第三行; 𝑞q 个正整数 𝑥 (𝑥≤1000)
输出格式
输出 𝑞 行,每行一个整数。若 𝑥 在 𝑛 个数中没有出现过,输出 0 。
样例 #1
样例输入 #1
10 3
1 2 1 2 3 2 1 3 1 1
1
3
4
样例输出 #1
5
2
0
代码如下
#include <iostream>
using namespace std;
int main()
{
int n, q;
cin>>n>>q;
int count[100001];
for (int i = 0; i < n; i++)
{
int num;
cin >> num;
count[num]++;
}
for (int i = 0; i < q; i++)
{
int x;
cin >> x;
cout << count[x] << "\n";
}
return 0;
}