https://www.luogu.com.cn/problem/P1093
1093这道题比较简单,跟我最近写的大作业有点相似。
用结构体定义所需的成员
然后在比较分数大小
这道题数据量很小,我用的冒泡排序
代码如下:
#include<stdio.h>
struct St{
int id;
int score[3];
int tol;
} st[666];
int list[666];
int main(){
int n;
scanf("%d",&n);
for (int i=1;i<n+1;i++){
st[i].id=i;
list[i]=i;
scanf("%d %d %d",&st[i].score[0],&st[i].score[1],&st[i].score[2]);
st[i].tol=st[i].score[0]+st[i].score[1]+st[i].score[2];
}
for (int i=1;i<6;i++){
for (int j=i+1;j<n+1;j++){
int tem;
if (st[list[i]].tol<st[list[j]].tol){
tem=list[j];
list[j]=list[i];
list[i]=tem;
}
else if (st[list[i]].tol==st[list[j]].tol && st[list[i]].score[0]<st[list[j]].score[0]){
tem=list[j];
list[j]=list[i];
list[i]=tem;
}
}
}
printf("%d %d\n",list[1],st[list[1]].tol);
printf("%d %d\n",list[2],st[list[2]].tol);
printf("%d %d\n",list[3],st[list[3]].tol);
printf("%d %d\n",list[4],st[list[4]].tol);
printf("%d %d",list[5],st[list[5]].tol);
return 0;
}
1093这道题比较简单,跟我最近写的大作业有点相似。
用结构体定义所需的成员
然后在比较分数大小
这道题数据量很小,我用的冒泡排序
代码如下:
#include<stdio.h>
struct St{
int id;
int score[3];
int tol;
} st[666];
int list[666];
int main(){
int n;
scanf("%d",&n);
for (int i=1;i<n+1;i++){
st[i].id=i;
list[i]=i;
scanf("%d %d %d",&st[i].score[0],&st[i].score[1],&st[i].score[2]);
st[i].tol=st[i].score[0]+st[i].score[1]+st[i].score[2];
}
for (int i=1;i<6;i++){
for (int j=i+1;j<n+1;j++){
int tem;
if (st[list[i]].tol<st[list[j]].tol){
tem=list[j];
list[j]=list[i];
list[i]=tem;
}
else if (st[list[i]].tol==st[list[j]].tol && st[list[i]].score[0]<st[list[j]].score[0]){
tem=list[j];
list[j]=list[i];
list[i]=tem;
}
}
}
printf("%d %d\n",list[1],st[list[1]].tol);
printf("%d %d\n",list[2],st[list[2]].tol);
printf("%d %d\n",list[3],st[list[3]].tol);
printf("%d %d\n",list[4],st[list[4]].tol);
printf("%d %d",list[5],st[list[5]].tol);
return 0;
}
全部评论
相关推荐
点赞 评论 收藏
分享
11-08 21:07
门头沟学院 Java 点赞 评论 收藏
分享
12-11 11:46
南京信息工程大学 Java 程序员花海:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的
点赞 评论 收藏
分享