问题遇到的现象和发生背景
蒜头君手上有个长度为 nn 的数组 AA。由于数组实在太大了,所以蒜头君也不知道数组里面有什么数字,所以蒜头君会经常询问在数组 AA 中,等于 xx 的数字有多少个?
输入格式
第一行输入两个整数 nn 和 mm,分别表示数组的长度和查询的次数。
接下来一行有 nn 个整数 a_ia
i
。
接下来 mm 行,每行有 11 个整数 xx,表示蒜头君询问的整数。
输出格式
对于每次查询,输出一个整数,表示数组 AA 中有多少个 xx。
数据范围
1 \le n, m \le 10^5, 0 \le x \le 10^61≤n,m≤10
5
,0≤x≤10
6
。
问题相关代码,请勿粘贴截图
######报错
Time Limit Exceeded
#######
include <iostream>
#include <stdlib.h>
using namespace std;
int main()
{
int n;
while(scanf("%d",&n)!=EOF){
int m;cin>>m;
int* a=(int *)malloc(1000000*sizeof(int));
int* aim=(int *)malloc(1000000*sizeof(int));
int* ans=(int *)malloc(1000000*sizeof(int));
for(int i=0;i<n;i++)
cin>>a[i];
for(int i=0;i<m;i++)
{
cin>>aim[i];
getchar();
}
for(int i=0;i<m;i++)
{
for(int j=0;j<n;j++)
{
if(aim[i]==a[j])
ans[i]++;
}
}
for(int i=0;i<m;i++)
cout<<ans[i]<<endl;
}
return 0;
}
输入
10 5
1 1 1 2 3 5 5 7 8 9
0
1
4
9
10
结果
0
3
0
1
0