Excel可以对一组纪录按任意指定列排序。现请你编写程序实现类似功能。

Input

测试输入包含若干测试用例。每个测试用例的第1行包含两个整数 N (<=100000) 和 C,其中 N 是纪录的条数,C 是指定排序的列号。以下有 N 
行,每行包含一条学生纪录。每条学生纪录由学号(6位数字,同组测试中没有重复的学号)、姓名(不超过8位且不包含空格的字符串)、成绩(闭区间[0, 100]内的整数)组成,每个项目间用1个空格隔开。当读到 N=0 时,全部输入结束,相应的结果不要输出。 

Output

对每个测试用例,首先输出1行“Case i:”,其中 i 是测试用例的编号(从1开始)。随后在 N 行中输出按要求排序后的结果,即:当 C=1 时,按学号递增排序;当 C=2时,按姓名的非递减字典序排序;当 C=3 
时,按成绩的非递减排序。当若干学生具有相同姓名或者相同成绩时,则按他们的学号递增排序。 

Sample Input

3 1
000007 James 85
000010 Amy 90
000001 Zoe 60
4 2
000007 James 85
000010 Amy 90
000001 Zoe 60
000002 James 98
4 3
000007 James 85
000010 Amy 90
000001 Zoe 60
000002 James 90
0 0

Sample Output

Case 1:
000001 Zoe 60
000007 James 85
000010 Amy 90
Case 2:
000010 Amy 90
000002 James 98
000007 James 85
000001 Zoe 60
Case 3:
000001 Zoe 60
000007 James 85
000002 James 90
000010 Amy 90

水题,没啥技术含量,重载cmp时注意调用关系和大于小于号就行
#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>using namespace std;typedef long ll;
const int maxn=100005;typedef struct
{char a[9];ll b;int c;
}ss;
bool cmp1(ss s1,ss s2)
{return s1.b<s2.b;
}bool cmp2(ss s1,ss s2)
{if(strcmp(s1.a,s2.a)==0)return cmp1(s1,s2);return strcmp(s1.a,s2.a)<0;
}bool cmp3(ss s1,ss s2)
{if(s1.c==s2.c)return cmp1(s1,s2);return s1.c<s2.c;
}int main()
{ss s[maxn];int n,c,no=1;while(cin>>n>>c&&n!=0){for(int i=0;i<n;i++)cin>>s[i].b>>s[i].a>>s[i].c;if(c==1)sort(s,s+n,cmp1);if(c==2)sort(s,s+n,cmp2);if(c==3)sort(s,s+n,cmp3);printf("Case %d:\n",no++);for(int i=0;i<n;i++)printf("%06ld %s %d\n",s[i].b,s[i].a,s[i].c);}return 0;
}

E - EXCEL排序相关推荐

  1. 降序排序_新手需要掌握的Excel排序功能都在这儿了!

    排序,真的是一个很基础的功能. 如果还不知道排序的话,可能仅仅是用Excel来做数据录入了. 但是排序真的又不是一个简单的功能,能全部了解其中细节的人真的不多,今天分享关于排序的内容,不讲太深,仅仅是 ...

  2. HDU1862 EXCEL排序【排序】

    EXCEL排序 Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total S ...

  3. 7-1 模拟EXCEL排序 (25 分)

    7-1 模拟EXCEL排序 (25 分) Excel可以对一组纪录按任意指定列排序.现请编写程序实现类似功能. 输入格式: 输入的第一行包含两个正整数N(≤10 ​5 ​​ ) 和C,其中N是纪录的条 ...

  4. R7-9 模拟EXCEL排序 (25 分)

    R7-9 模拟EXCEL排序 (25 分) Excel可以对一组纪录按任意指定列排序.现请编写程序实现类似功能. 输入格式: 输入的第一行包含两个正整数N(≤105) 和C,其中N是纪录的条数,C是指 ...

  5. 降序排序_排序简单,应用不易,使用Excel排序的几点建议

    对数据排序,是数据分析中最基本.最常用也是最重要的分析方法.Excel提供了丰富.简单.灵活的排序方法和排序方式,包括单个排序.组合排序等.对于学习者短时间内掌握Excel的排序,难度不大.问题可能更 ...

  6. 题目4:EXCEL排序

    http://ac.jobdu.com/problem.php?cid=1040&pid=3 题目描述: Excel可以对一组纪录按任意指定列排序.现请你编写程序实现类似功能. 对每个测试用例 ...

  7. Excel排序与查重

    Excel排序,****可以按数值,可以按单元格颜色,也可以按字体颜色 原始数据 第二列通过数值排序,然后将三字四字字体颜色设置为红色,对第二列再按字体颜色排序,最后将四字单元格颜色设置为绿色,只选择 ...

  8. C语言 qsort的用法 模拟EXCEL排序

    C语言 qsort的用法 模拟EXCEL排序 题目 Excel可以对一组记录按任意指定列排序.现请编写程序实现类似的功能. 输入 输入的第一行包含两个正整数N(<= 10^5)和C,其中N是记录 ...

  9. C++EXCEL排序

    C++EXCEL排序 Excel可以对一组纪录按任意指定列排序.现请你编写程序实现类似功能. Input 测试输入包含若干测试用例.每个测试用例的第1行包含两个整数 N (<=100000) 和 ...

  10. excel计算机不准确,Excel排序不准确的解决方法

    Excel排序不准确,是普通用户在电脑应用中经常会遇到的问题,我们应该有针对性的解决这些问题. 没有正确选择数据区域,而自动选择的区域中包含有空格 如果需要排序的数据区域不是标准的数据列表,并且包含空 ...

最新文章

  1. asp.net 用户控件
  2. 在Kubernetes集群上部署高可用Harbor镜像仓库
  3. C/C++ 之 C发展史及 各标准特性说明
  4. Python 生成器 迭代器
  5. 你应该知道的 Node 基础知识
  6. 驱动框架5——基于驱动框架写led驱动
  7. jqgrid为什么表头和数据之间有间隙_面试官:你看过Redis数据结构底层实现吗?...
  8. 【白皮书分享】2020用户生命周期运营白皮书2.0.pdf(附下载链接)
  9. 干货丨如何从零构建一个数据可视化项目?
  10. day2-requests和bs4
  11. 阿里云Android直播demo流程
  12. 宜立方商城第二天心得
  13. OPENGLES 绘制纹理带黑圈pre-multiplying
  14. hex文件格式剖析,以及hex与bin文件互相转换
  15. Linux 命令(211)—— ssh-agent 命令
  16. 安徽科技学院 信网学院网络文化节 孙晓楠
  17. OpenWRT之UCI系统
  18. 最大似然概率和后验概率的区别
  19. 深入理解Android之AOP
  20. 高端对话:过程改进领域热点话题集锦

热门文章

  1. 计算机操作系统 学习笔记(第四版 汤小丹)(上)
  2. Java之日志打印占位符
  3. win10c语言乱码修复方法,软件乱码 教你win10系统打开软件乱码的修复技巧
  4. 爬虫四步曲大神一步一步来教你,使用python抓取网页数据并储存
  5. MATLAB基本操作及概念
  6. 原创 关于中国象棋的
  7. 系统安全之利用操作系统自带命令杀毒
  8. 黄芪和当归的分量是5:1的比例,如黄芪30克,当归6克
  9. echarts图表折线图柱状图多个X轴Y轴以及一个Y轴反向
  10. ac6005直连ap 如何配置_WLAN1:AC6005组网配置实验