不同流合污,难吗
查看原帖
不同流合污,难吗
1379790
chengwei_hust楼主2025/6/18 20:30

/** 原帖看不到 重发 洛谷啊洛谷 不求你阻止别的人“围杀”我 但求洛谷你不要自己动手 洛谷 你就不怕脏了手 虽然洛谷 这种事情你可能已经干了很多次 早就脏了手 而且也不Care一个蓝名用户的呐喊 */

chengwei_hust 发表于 2024-10-29 12:40 回复楼主

#include<iostream>
using namespace std;
struct student{
    string name;
    int n;
    int m;
    int e;
};
bool cmp(student a,student b){
    return (a.n+a.m+a.e)>(b.n+b.m+b.e);
}
int main(){
    int n;
    cin >> n;
    student a[n];
    for(int i=0;i<n;i++)
        cin >> a[i].name >> a[i].n >> a[i].m >> a[i].e;
    sort(a,a+n,cmp);
    cout << a[0].name << ' ' << a[0].n << ' ' << a[0].m << ' ' << a[0].e;
}

5 条回复 默认排序

IceKylin 回复于 8 个月前 举报 回复 @chengwei_hust

你好,stable_sort

litangzheng 回复于 8 个月前 举报 回复 @chengwei_hust sort根本不在iostream里面啊,你怎么过编译的。

chengwei_hust 回复于 8 个月前 举报 删除 回复 @litangzheng 我自己本地IDE可能设置了包含一些库头文件,编译能过,我就直接贴出来了,抱歉,应该加上#include

chengwei_hust 回复于 8 个月前 举报 删除 回复 @IceKylin 谢谢你的回复和帮助。sort在小数据时是使用类似插入排序,递归层次较深时又改成使用类似于堆排序,一般情况下使用类似于快速排序。不同的平台和编译器对小数据的宏定义可能不一样,导致了我的机器上能通过这个913条排序数据的测试点,洛谷编译后执行时不一样的结果。已改成stable_sort通过了洛谷测试点。

dwxweishengpu 回复于 7 个月前 举报 回复 sort没稳定性(建议用冒泡)

2025/6/18 20:30
加载中...