哪位大佬给看看,样例和一个WA本地测试了都可以过,其他全是RE(代码有详细注释)

P5740 【深基7.例9】最厉害的学生

Music1907 @ 2023-02-18 17:00:12


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

int main(){
    int n;
    cin>>n;
    int k=0;
    int* sum=(int*)malloc(n*sizeof(int));
    int* sum2=(int*)malloc(n*sizeof(int));//备用总分数组 

    string* s=(string*)malloc(n*sizeof(string*));//将学生名字用string数组保存起来 
    int **score=(int**)malloc(n*sizeof(int*));//学生各科分数用二维数组保存,这是动态申请二维数组 
    for(int i=0;i<n;i++){
        score[i]=(int*)malloc(sizeof(int)*3); 
    }
    //输入数据 
    for(int i=0;i<n;i++){
        scanf("%s",&s[i]);
        getchar();
        for(int j=0;j<3;j++){
                cin>>score[i][j];
                getchar();
        }

    }
    for(int i=0;i<n;i++){
    sum[i]=0;//初始化总分数组 为0 
    }

    for(int i=0;i<n;i++){
    for(int j=0;j<3;j++){
        sum[i]+=score[i][j];//对学生各科成绩加和,得到sum数组 ,并将值赋值给sum2备用 
        }
        sum2[i]=sum[i];
    }
    sort(sum,sum+n);//对sum内部进行排序,sum[n-1]为最大值 

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

        if(sum2[i]==sum[n-1]){//将最大分数值与sum2进行比较,得到第一个分值最大的学生下标k 
            k=i;
            break;
        }
    }
    //输出 
    printf("%s",&s[k]);
    cout<<' '<<score[k][0]<<' '<<score[k][1]<<' '<<score[k][2];
    return 0;
}

by jtshw @ 2023-02-18 19:59:42

@Music1907 哪题


by Music1907 @ 2023-02-19 10:19:45

@jtshw 啊啊啊!我发现自己的bug了,不用您看了,谢谢大佬!


|