排序问题题解大合集
算法1
与此题同样的思想,略做修改即可
参考文献
C++ 代码
#include<bits/stdc++.h>
using namespace std;
struct node{
int x,id;
}a[1001];
bool cmp(node a,node b){
if(a.x==b.x)return a.id<b.id;
return a.x<b.x;
}
int main()
{
int n;
bool ok;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i].id>>a[i].x;
}
sort(a+1,a+1+n,cmp);
for(int i=1;i<=n;i++)
cout<<a[i].id<<' '<<a[i].x<<'\n';
}
我觉得这个好理解些