PTA乙级1038C++哈希解法
#include"bits/stdc++.h"
using namespace std;
int main()
{
int a,b[105]={0};
long i,n,K;
cin>>n;
for(i=0;i<n;i++)
{
cin>>a;
b[a]++;
}
cin>>K;
int c[K];
for(i=0;i<K;i++) cin>>c[i];
for(i=0;i<K;i++)
{
if(i!=K-1) cout<<b[c[i]]<<' ';
else cout<<b[c[i]];
}
return 0;
}
开一个105的数组,把读入的分数作为数组的下标;记得把数组初始化为零,这样我们只需要按第二次读入数据的顺序遍历数组即可,这样便能解决超时问题。