问题标题: 酷町堂:4871

0
0
已解决
季鸿天
季鸿天
修练者
修练者

4871   统计数字个数

经验值:1200

时间限制:1000毫秒

内存限制:128MB

题目描述 Deion

给出n个整数,每个数字在-20,000,000到20,000,000之间,现在需要统计m个数字出现的次数。

输入描述 Input Deion

第一行,一个正整数,n
第二行,n个空格隔开的整数
第三行,一个正整数,m,表示要统计个数的整数数量
接下来m行,每行一个整数

输出描述 Output Deion

m行,对于第i个要统计数量的数字,输出其个数

样例输入 Sample Input

10 1 2 3 4 5 6 7 8 9 10 5 -1 1 2 10 100

样例输出 Sample Output

0 1 1 1 0

数据范围及提示 Data Size & Hint

n<=100,000

#include<bits/stdc++.h>

using namespace std;

int a[100010];

int b[100010];

int main(){

    int n,m;

    scanf("%d",&n);

    for(int i=1;i<=n;i++){

        scanf("%d",&a[i]);

    }

    scanf("%d",&m);

    for(int i=1;i<=n;i++){

        int x;

        scanf("%d",&x);

        if(b[x]==0){

            for(int j=1;j<=n;j++){

                if(a[j]==x){

                    b[x]++;

                }

            }

            cout<<b[x]<<endl;

        }else{

            cout<<b[x]<<endl;

        }

    }

    return 0;

}

这个代码有什么问题??大佬们??


0
已采纳
酷町扫地僧
酷町扫地僧
资深启示者
资深启示者

这个要用map来做

0
0
我要回答