【PAT B 1038】统计同成绩学生

PAT 的题看见10^5的数据量我就知道要卡一下TLE,但没想到是因为cout/cin 输入输出流的性能问题。针对循环输入输出还是使用scanf。

#include 
#include 
using namespace std;
int main(){
    int number,HashTable[105] ={0},score = 0,space;
    cin >> number;
    for(int i = 0;i < number;i++){
        (void)scanf("%d",&score);
        HashTable[score]++;
    }

    cin >> number;
    space = number - 1;
    for(int i = 0;i < number;i++){
        (void)scanf("%d",&score);
        cout << HashTable[score];
        if(space--)
            cout << " ";
    }

    return 0;
}

你可能感兴趣的:(【PAT B 1038】统计同成绩学生)