正题
题目大意
就是给出4科排名,然后求两科的排名,按其中一科排名输出。
解题思路
水题不解释
代码
#include<cstdio>
#include<algorithm>
using namespace std;
struct node{int c,m,e,x,ms;
}a[46];
int n;
bool cmp(node x,node y)
{return x.x>y.x;}
bool cmp2(node x,node y)
{return x.m>y.m;}
int main()
{//freopen("sort.in","r",stdin);//freopen("sort.out","w",stdout);scanf("%d",&n);for (int i=1;i<=n;i++)scanf("%d%d%d%d",&a[i].c,&a[i].m,&a[i].e,&a[i].x);sort(a+1,a+1+n,cmp2);//排序求数学排名for (int i=1;i<=n;i++)a[i].ms=i;sort(a+1,a+1+n,cmp);//按电脑排名升序输出for (int i=1;i<=n;i++)printf("%4d%5d%5d%5d%5d%5d \n",a[i].c,a[i].m,a[i].e,a[i].x,a[i].ms,i);//玄学部分
}