您的位置:首页 > 其它

HDU 1862 EXCEL排序

2016-09-22 20:10 393 查看

EXCEL排序

内容比较多的结构体排序
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
struct stu
{
int a;
char str[10];
int b;
};
bool cm1(stu i,stu j)
{
return i.a<j.a;
}
bool cm2(stu i,stu j)
{
if(strcmp(j.str,i.str)==1)
return 1;
else if(strcmp(j.str,i.str)==-1)
return 0;
else
return i.a<j.a;
}
bool cm3(stu i,stu j)
{
if(i.b<j.b)
return 1;
else if(i.b>j.b)
return 0;
else
return i.a<j.a;
}

stu s[100001];
int main()
{
int i,n,m;
int e=0;
while(~scanf("%d%d",&n,&m)&&n+m)
{
e++;
for(i=0; i<n; i++)
{
scanf("%d",&s[i].a);
scanf("%s",s[i].str);
scanf("%d",&s[i].b);
}
if(m==1)
sort(s,s+n,cm1);
if(m==2)
sort(s,s+n,cm2);
if(m==3)
sort(s,s+n,cm3);
printf("Case %d:\n",e);
for(i=0;i<n;i++)
{
printf("%.6d %s %d\n",s[i].a,s[i].str,s[i].b);
}
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ACM