数字出现的次数刚需求解

数字出现的次数
题目描述
给定N个整数,计算出数字出现的次数。
输入格式
第一行,一个整数N,表示整数的个数,N≤10^6;
第二行,N个整数,每个整数i≤10^5;
第三行,一个整数M,表示接下来将有m个循环,m≤10^3
接下来M行,每行一个数字p,表示要查询的数

输出格式
对于每个询问输出一行,输出对应的整数出现的次数
输入输出样列
输入样例1:复制
8
1 2 3 3 3 3 4 5
1
3
输出样例1:复制
4


#include <iostream>
using namespace std;

int main() {
    int n;
    cin>>n;
    int *a = new int[n];
    for(int i=0; i<n; i++)
        cin>>a[i];
    int m;
    cin>>m;
    while(m--) {
        int elem;
        cin>>elem;
        int count = 0;
        for(int i = 0; i < n; i++) {
            if(a[i] == elem) count++;
        }
        cout<<count<<endl;
    }
    delete[]a;
    return 0;
}

有帮助记得采纳哟

有些没学过,可以换一种方法吗