EXCEL排序

Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 19807    Accepted Submission(s): 7275

Problem Description
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

Source

浙大计算机研究生复试上机考试-2007年

问题链接:HDU1862 EXCEL排序

问题简述:参见上文。

问题分析:这是一个排序程序,一切都是套路。

程序说明:(略)

题记:程序就是要写得简洁。

AC的C++语言程序如下:

/* HDU1862 EXCEL排序 */#include <iostream>
#include <algorithm>
#include <string.h>using namespace std;const int N = 100000;struct _student {char id[10];char name[12];int score;
} student[N];// 按学号排序
bool cmp1(_student x, _student y)
{return strcmp(x.id, y.id) < 0;
}// 按姓名排序
bool cmp2(_student x,_student y)
{if(strcmp(x.name, y.name) < 0)return true;else if(strcmp(x.name, y.name) == 0)return strcmp(x.id, y.id) < 0;elsereturn false;
}// 按成绩排序
bool cmp3(_student x, _student y)
{if(x.score < y.score)return true;else if(x.score == y.score)return strcmp(x.id, y.id) < 0;elsereturn false;
}int main()
{int n, c, caseno = 0;while(cin >> n >> c && n) {for(int i=0; i<n; i++)cin >> student[i].id >> student[i].name >> student[i].score;cout << "Case " << ++caseno << ":" << endl;if(c == 1)sort(student, student + n, cmp1);else if(c == 2)sort(student, student + n, cmp2);elsesort(student, student + n, cmp3);for(int i=0; i<n; i++)cout << student[i].id << " " << student[i].name << " " << student[i].score << endl;}return 0;
}

转载于:https://www.cnblogs.com/tigerisland/p/7563597.html

HDU1862 EXCEL排序【排序】相关推荐

  1. Excel 如何排序与多关键字排序

    Excel 如何排序与多关键字排序 在使用Excel时,对每项录入了数据后,需要对它们进行排序,如何实现呢? 唯一关键字排序 排序前原表格如下: 我们需要以"总分"为关键字排降序, ...

  2. 用计算机排序excel,【用excel名字排序的方法有哪些?这些简便的计算机技能你一定需要】- 环球网校...

    [摘要]在Excel中,我们经常会遇到很多关于名称的表格,所以需要知道用excel名字排序的方法有哪些?这些简便的计算机技能你一定需要,为了方便大家办公,今天特地为大家整理了<用excel名字排 ...

  3. excel表格排序,4种排序教程全都有

    excel具备直观的界面.出色的计算功能和图表工具,其中excel可以对庞大的数据源利用排序进行快速整理,使数据一目了然并且美观,excel表格排序的具体流程是怎样的呢?小编给大家罗列了4种排序教程! ...

  4. java excel 多列排序,《excel表格调取行和列的数据》 excel列排序的时候怎么让所有行的信息跟着排(其它的非数据行)...

    Java里面怎么调用excel表格中的x行第y列的数据,将其赋值到int型变量i InputStream inp = new FileInputStream("workbook.xls&qu ...

  5. [office软件教程] Excel怎么排序数据?Excel数据排序的方法

    转载请说明来源于"厦门SEO" 本文地址:http://www.96096.cc/Article/160971.html office软件教程 Excel表格是每个公司人员在工作当 ...

  6. 计算机一级电子表格地区排名,玩转Excel电子表格排序方法大汇总

    玩转Excel电子表格排序方法大汇总 分类:计算机等级 | 更新时间:2016-07-08| 来源:转载 排序是数据处理中的经常性工作,Excel排序有序数计算(类似成绩统计中的名次)和数据重排两类. ...

  7. excel筛选排序从小到大_三分钟学会Excel排序功能,为你节省时间,注意收藏!...

    写在前面 为了让大家能以轻松的心态阅读文章,所以采用了模拟场景对话的方式,来分享办公软件使用心得. 小简,职场新人. 大道,有一定办公软件操作技能,乐于助人. 正文开始 本期和下期两期内容,是网友&q ...

  8. excel时间排序之按年和月排序方法

    内容提要:文章介绍excel时间排序中的分别按年和月讲解时间排序方法.对Excel感兴趣的朋友可加Excel学习交流群:284029260(www.itblw.com) 有时我们因工作原因需要进行ex ...

  9. 说一种计算机排序排序名称,【Excel姓名排序方法有哪些?这个计算机技能真的很高效】- 环球网校...

    [摘要]在Excel中,我们经常会接触到很多关于名字的表格,比如:成绩单,销售统计等等.Excel中名字排序有哪些方法?那么,word姓名排序方法有哪些?这个计算机技能真的很高效,所以你知道word姓 ...

最新文章

  1. Go 学习笔记(12)— 字典map定义、初始化、读取字典、删除字典、清空字典、map 按 key 进行有序遍历
  2. 广域网安全建设的思路和部署
  3. python 2 3 读写中文文件 使用codecs最方便
  4. Spring Boot——Druid在application.yml文件中配置【spring.datasource.druid.aop-patterns】无效解决方案
  5. Android开发中Edittext设置密码显示隐藏的多种方法
  6. 电脑重装系统需要全盘格式化吗?这个事项需要看情况
  7. PHP--变量部分知识点
  8. 点云配准ICPNDT
  9. React小书没提到但是很有用的基础知识
  10. 免费文章原创度检测工具
  11. matlab 入门 实验,matlab入门实验.doc
  12. 计算机上e盘拒绝访问,E盘拒绝访问怎么办?Win7系统E盘拒绝访问的方法
  13. yum安装hypo插件
  14. ABAQUS中inp文件的使用和书写
  15. window7(64bit)环境下安装基于TensorFlow后端的Keras 教程(CPU版)
  16. java随机生成车牌号函数
  17. 为什么OSPF在广播网络里面,DD和LSR采用单播,而LSU hello采用组播。
  18. 最终幻想之父——坂口博信 (转载自天幻网(www.SquareCN.com))
  19. 灰色系统预测模型GM(1,1),GM(1,n)及Matlab实现
  20. Ubuntu 14.04安装Nvidia显卡驱动以及查看显卡驱动

热门文章

  1. 关于K-Meleon浏览器的使用技巧汇总
  2. 地址空间和虚拟内存(转载)http://topic.csdn.net/u/20090619/10/4c62a13b-536b-4b0a-af09-2271c6a104e1.html...
  3. linux监控目录变动
  4. OpenCV基本的阈值操作
  5. python使用esmre代替ahocorasick实现ac自动机[多模匹配]
  6. 基于摄像头使用Cascade Classifier做人脸检测的方法及例程
  7. 从 idea打包工程到dos下命令运行
  8. 2017-05-23 前端日报
  9. JavaScript实现网页元素的拖拽效果
  10. Spring Boot——开发新一代Spring Java应用