有没有dalao帮忙看看哪里错了,WA了四个点。。。
#include <bits/stdc++.h>
using namespace std;
int n;
struct node{
double a,b;
int id;
}x[200005];
bool cmp(node p,node q){
if (p.a / (p.a + p.b) != q.a / (q.a + q.b)) return (p.a / (p.a + p.b) > q.a / (q.a + q.b));
else return p.id < q.id;
}
int main(){
cin >> n;
for (int i = 1;i <= n;i++){
cin >> x[i].a >> x[i].b;
x[i].id = i;
}
sort(x + 1,x + n + 1,cmp);
for (int i = 1;i <= n;i++) cout << x[i].id << " ";
return 0;
}