hdu - 6281,2018CCPC湖南全国邀请赛F题,快排

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6281

题意:
  根据已给出的式子,进行排序,然后输出排完序后原先的下表。

题解:用结构体保存,在用结构体排序,利用stable_sort()稳定排序。因为会爆long long ,所以对式子进行转换。
  hdu - 6281,2018CCPC湖南全国邀请赛F题,快排

代码:

#include<bits/stdc++.h>

using namespace std;

struct node{
int n;
long long a,b,c;
friend bool operator< (const node &a,const node &b){
return a.c*(b.a+b.b)>b.c*(a.a+a.b);
}
}num[]; int main(){
long long n,a,b,c;
while(~scanf("%lld",&n)){
for(int i=;i<=n;i++){
scanf("%lld%lld%lld",&a,&b,&c);
num[i].a=a,num[i].b=b,num[i].c=c;
num[i].n=i;
}
stable_sort(num+,num+n+);
for(int i=;i<=n;i++){
printf("%d%c",num[i].n,i==n?'\n':' ');
}
}
}

By Rvelamen

上一篇:lvm的磁盘管理知识点整理


下一篇:HTML之头部标签