struct stu//定义一个结构体
{
int i,j,k
};
int cmp(stu a,stu b)//先按照i的升序排序,再按照k的升序排序;
{
if(a.i==b.i)
return a.k<b.k;
//return a.k>b.k; 再按照k的降序排序;
else
return a.i<b.i;
}
int cmp(stu a,stu b)//先按照i的升序排序,再按照k的升序排序;
{
if(a.i==b.i)
{
if(a.k==b.k)
return a.j<b.j;
else
return a.k<b.k;
}
else
return a.i<b.i;
}
上代码:
#include<iostream>
#include<algorithm>
using namespace std;
int s1[10000],s2[10000];
struct stu
{
int kai,jie;
}pai[10005];
int cmp(stu a,stu b)
{
if(a.jie==b.jie)
return a.kai>b.kai;
else
return a.jie<b.jie;
}
int main()
{
int a,b,c,t,n,m,sum=0.0;
char ch1,ch2;
cin>>a;
while(a--)
{
t==1;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>pai[i].kai>>pai[i].jie;
}
sort(pai,pai+n,cmp);
for(int i=0;i<n-1;i++)
{
//cout<<pai[i].kai<<' '<<pai[i].jie<<endl;
if(pai[i].jie<pai[i+1].kai)
t++;
}
//cout<<t<<endl;
}
return 0;
}
sort多成员排序(结构体)
最新推荐文章于 2021-11-04 11:29:02 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)