大海中的孤帆 @ 2022-01-09 12:14:14
70分代码,求帮助,6,7,8没过
#include<iostream>
using namespace std;
int a[500][4],xh[500];
void jh(int a1,int b)
{
int k=a[a1][3];
a[a1][3]=a[b][3];
a[b][3]=k;
k=a[a1][0];
a[a1][0]=a[b][0];
a[b][0]=k;
k=xh[a1];
xh[a1]=xh[b];
xh[b]=k;
}
int main()
{
int n;
cin>>n;
for(int i=0;i<n;++i)
{
for(int j=0;j<3;++j)
{
cin>>a[i][j];
a[i][3]+=a[i][j];
}
xh[i]=i+1;
}
for(int i=0;i<n;++i)
for(int j=1;j<n-i;++j)
{
if(a[j][3]>a[j-1][3])//分数比较
jh(j,j-1);
if(a[j][3]==a[j-1][3])
{
if(a[j][0]>a[j-1][0])//语文比较
jh(j,j-1);
if(a[j][0]==a[j][0])
if(xh[j]<xh[j-1])//学号比较
jh(j,j-1);
}
}
for(int i=0;i<5;++i)
cout<<xh[i]<<" "<<a[i][3]<<endl;
return 0;
}