问题标题: 酷町堂:5521 马拉松比赛

0
0
已解决
曹子瀚
曹子瀚
中级守护
中级守护

错误代码:

#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
struct stu{
    string name;
    int b;
    int t,sum;
}a[10005];
bool cmp(stu x,stu y){
    return x.sum>y.sum;
}
int main(){
    int n;
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>a[i].name>>a[i].b>>a[i].t;
        a[i].sum=a[i].b*a[i].t;
    }
    sort(a+1,a+n+1,cmp);
    for(int i=1;i<=n;i++){
        cout<<a[i].name<<endl;
    }
    return 0;
}

曹子瀚在2023-01-30 15:15:55追加了内容

#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
struct stu{
    string name;
    int b;
    int t,sum;
}a[10005];
bool cmp(stu x,stu y){
    return x.sum>y.sum;
}
int main(){
    int n;
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>a[i].name>>a[i].b;
        a[i].sum=a[i].b*a[i].t;
    }
    sort(a+1,a+n+1,cmp);
    for(int i=1;i<=n;i++){
        cout<<a[i].name<<endl;
    }
    return 0;
}

曹子瀚在2023-01-30 15:16:08追加了内容

#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
struct stu{
    string name;
    int b;
    int t,sum;
}a[10005];
bool cmp(stu x,stu y){
    return x.sum>y.sum;
}
int main(){
    int n;
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>a[i].name>>a[i].b;
        a[i].sum=a[i].b*a[i].t;
    }
    sort(a+1,a+n+1,cmp);
    for(int i=1;i<=n;i++){
        cout<<a[i].name<<endl;
    }
    return 0;
}


0
已采纳
崔子周
崔子周
高级天翼
高级天翼

结构体

struct stu{ 
   string name; 
   int id; 
}s[10005];

排序

bool cmp(stu x,stu y){
    return x.id>y.id;
}

主函数

    输入>>n>>t;
    循环(int i=1;i<=n;i++){
        输入>>s[i].name>>s[i].id;
    }
    排序(s+1,s+n+1,cmp);
    循环(int i=1;i<=n;i++){
        输出<<s[i].name<<"\n";
    }

 

0
薛乘志
薛乘志
初级启示者
初级启示者

敢问这是什么,样例只有2个输入吧

0
我要回答