输入样例:
10
60 75 90 55 75 99 82 90 75 50
3 75 90 88
输出样例:
3 2 0
题目并不难,因为已经确定成绩为[0,100],只需要开一个大小为101的数组,记录下各个成绩出现的次数,输出时直接查表即可。
#include <iostream>
#include <string.h>
#include <map>
#include <algorithm>
using namespace std;
void count(int* p,int* q,long n,long x);
int main()
{
long n;
cin>>n;
int* p=new int[n];
for(long i=0;i<n;i++)
cin>>p[i];
long x;
cin>>x;
int* q=new int[x];
for(long i=0;i<x;i++)
cin>>q[i];
count(p,q,n,x);
}
void count(int* p,int* q,long n,long x)
{
int* r=new int[101];
memset(r,0,101*sizeof(int));
for(long i=0;i<n;i++)
{
r[p[i]]++;
}
for(long i=0;i<x-1;i++)
{
cout<<r[q[i]]<<" ";
}
cout<<r[q[x-1]];
delete r;
}