10 分数统计 (300 分)

老师想统计学生考试排名,假定一共有n名学生,学号为1至n。现按学号递增顺序给定每个学生的分数,请编写程序,帮助老师计算:对于每个学生,他的成绩比多少人高。假定考试满分为1000分,成绩均为整数。

这道题在比赛的时候没想到,结束后再仔细考虑以及百度,发现当输入一个分数的时候,从这个分数到1000加一,例如当输入80的时候,从81到1000都加一,于是最后再查询比这个分数小的有多少人的时候,直接查询。

#include<bits/stdc++.h>
using namespace std;

int sorce[1005];

int main(){
    int n,x;
    cin>>n;
    int arr[n];
    for(int i = 0 ; i < n; i++){
        cin>>x;
        arr[i]=x;
        for(int j = x+1; j<=1000; j++){
            sorce[j]++;
        }
    }
    for(int i = 0; i < n; i++){
            cout<<sorce[arr[i]]<<" ";
    }
    cout<<endl;
    
    return 0;
}

 

posted @ 2022-04-23 23:05  没停过WA  阅读(633)  评论(0)    收藏  举报