文章
17
粉丝
0
获赞
57
访问
2.4k
#include <stdio.h>
typedef struct Att{
int num;
int q;
}Stu;
Stu stu[101];
void mp( Stu a[],int len){
for(int i=0;i<len;i++){
for(int j=0;j<len-i-1;j++){
if(a[j].q>a[j+1].q){
Stu temp = a[j];
a[j] = a[j+1];
a[j+1]=temp;
}else if(a[j].q==a[j+1].q){
if(a[j].num>a[j+1].num){
Stu temp = a[j];
a[j] = a[j+1];
a[j+1]=temp;
}
}
}
}
}
void qsort(Stu a[],int l,int r){
if(l>=r) return ;
int i=l-1;
int j=r+1;
Stu x= a[(l+r+1)/2];
while(i<j){
do i++; while (a[i].q<x.q||(a[i].q==x.q&&a[i].num<x.num));
do j--;while(a[j].q>x.q||(a[j].q==x.q&&a[j].num>x.num));
if(i<j){
Stu temp = a[i];
a[i] = a[j];
a[j]=temp;
}
}
qsort(a,l,i-1);
qsort(a,i,r);
}
int main(){
int n;
scanf("%d",&n);
int i=0;
while(n--){
scanf("%d%d",&stu[i].num,&stu[i].q);
i++;
}
qsort(stu,0,i-1);
for(int j=0;j<i;j+...
登录后发布评论
暂无评论,来抢沙发