解题思路:
注意事项:
参考代码:
#include <cstdio>
int main()
{
int n;
scanf("%d",&n);
int i[305],j[305],k[305],l[305],m[305];
for(int a = 0; a < n; a ++)
{
scanf("%d%d%d",&i[a],&j[a],&k[a]);
l[a]=i[a]+j[a]+k[a];
m[a]=a+1;
}
int t;
for(int b = 0; b < n-1; b ++)
{
for(int a = 0; a < n-1-b; a ++)
{
if(l[a]<l[a+1])
{
t=i[a];
i[a]=i[a+1];
i[a+1]=t;
t=j[a];
j[a]=j[a+1];
j[a+1]=t;
t=k[a];
k[a]=k[a+1];
k[a+1]=t;
t=l[a];
l[a]=l[a+1];
l[a+1]=t;
t=m[a];
m[a]=m[a+1];
m[a+1]=t;
}
else if(l[a]==l[a+1])
{
if(i[a]==i[a+1])
{
if(m[a]>m[a+1])
{
t=i[a];
i[a]=i[a+1];
i[a+1]=t;
t=j[a];
j[a]=j[a+1];
j[a+1]=t;
t=k[a];
k[a]=k[a+1];
k[a+1]=t;
t=l[a];
l[a]=l[a+1];
l[a+1]=t;
t=m[a];
m[a]=m[a+1];
m[a+1]=t;
}
}
else if(i[a]<i[a+1])
{
t=i[a];
i[a]=i[a+1];
i[a+1]=t;
t=j[a];
j[a]=j[a+1];
j[a+1]=t;
t=k[a];
k[a]=k[a+1];
k[a+1]=t;
t=l[a];
l[a]=l[a+1];
l[a+1]=t;
t=m[a];
m[a]=m[a+1];
m[a+1]=t;
}
}
}
}
for(int a = 0; a < 5; a ++)
printf("%d %d\n",m[a],l[a]);
return 0;
}
0.0分
0 人评分
C语言训练-计算一个整数N的阶乘 (C语言代码)浏览:928 |
C语言程序设计教程(第三版)课后习题9.4 (Java代码)浏览:1416 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:578 |
简单的a+b (C语言代码)浏览:523 |
C语言程序设计教程(第三版)课后习题6.6 (C语言代码)浏览:349 |
Hello, world! (C++代码)浏览:1744 |
字符逆序 (C语言代码)浏览:609 |
C语言程序设计教程(第三版)课后习题9.10 (C语言代码)浏览:819 |
输入输出格式练习 (C语言代码)浏览:743 |
C语言程序设计教程(第三版)课后习题7.3 (C语言代码)浏览:527 |