hdoj 1862 EXCEL排序
EXCEL排序
Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 14483 Accepted Submission(s): 5597
行,每行包含一条学生纪录。每条学生纪录由学号(6位数字,同组测试中没有重复的学号)、姓名(不超过8位且不包含空格的字符串)、成绩(闭区间[0, 100]内的整数)组成,每个项目间用1个空格隔开。当读到 N=0 时,全部输入结束,相应的结果不要输出。
时,按成绩的非递减排序。当若干学生具有相同姓名或者相同成绩时,则按他们的学号递增排序。
#include<stdio.h>
#include<string.h>
#include<algorithm>
#define MAX 100010
using namespace std;
struct record
{
int hao;
char a[10];
char s[10];
int score;
}num[MAX];
bool cmp1(record a,record b)
{
return a.hao<b.hao;
}
bool cmp2(record c,record d)
{
if(strcmp(c.s,d.s)!=0)
return strcmp(c.s,d.s)<0;
else
return c.hao<d.hao;
}
bool cmp3(record e,record f)
{
if(e.score!=f.score)
return e.score<f.score;
else
return e.hao<f.hao;
}
int main()
{
int n,m,j,i,s,t,l;
l=1;
while(scanf("%d%d",&n,&m)&&n!=0&&m!=0)
{
for(i=0;i<n;i++)
{
num[i].hao=0;
}
for(i=0;i<n;i++)
{
scanf("%s%s%d",&num[i].a,&num[i].s,&num[i].score);
for(j=0;j<6;j++)
{
num[i].hao=num[i].hao*10+(num[i].a[j]-'0');
}
}
if(m==1)
{
sort(num,num+n,cmp1);
printf("Case %d:\n",l);
for(i=0;i<n;i++)
{
printf("%s %s %d\n",num[i].a,num[i].s,num[i].score);
}
}
else if(m==2)
{
sort(num,num+n,cmp2);
printf("Case %d:\n",l);
for(i=0;i<n;i++)
{
printf("%s %s %d\n",num[i].a,num[i].s,num[i].score);
}
}
else if(m==3)
{
sort(num,num+n,cmp3);
printf("Case %d:\n",l);
for(i=0;i<n;i++)
{
printf("%s %s %d\n",num[i].a,num[i].s,num[i].score);
}
}
l++;
}
return 0;
}
hdoj 1862 EXCEL排序的更多相关文章
- HDOJ(HDU) 1862 EXCEL排序(类对象的快排)
Problem Description Excel可以对一组纪录按任意指定列排序.现请你编写程序实现类似功能. Input 测试输入包含若干测试用例.每个测试用例的第1行包含两个整数 N (<= ...
- 杭电 1862 EXCEL排序(sort+结构体)
Description Excel可以对一组纪录按任意指定列排序.现请你编写程序实现类似功能. Input 测试输入包含若干测试用例.每个测试用例的第1行包含两个整数 N (<=100000 ...
- 九度oj 题目1023:EXCEL排序
题目1023:EXCEL排序 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:20699 解决:4649 题目描述: Excel可以对一组纪录按任意指定列排序.现请你编写程序实现类似 ...
- PTA数据结构与算法题目集(中文) 7-37 模拟EXCEL排序 (25 分)
PTA数据结构与算法题目集(中文) 7-37 模拟EXCEL排序 (25 分) 7-37 模拟EXCEL排序 (25 分) Excel可以对一组纪录按任意指定列排序.现请编写程序实现类似功能. ...
- 【九度OJ】题目1023:EXCEL排序 解题报告
[九度OJ]题目1023:EXCEL排序 解题报告 标签(空格分隔): 九度OJ [LeetCode] http://ac.jobdu.com/problem.php?pid=1023 题目描述: E ...
- HDU 1862 EXCEL次序 (排序水问题)
Problem Description Excel对能够记录一组由任意列排序指定.现在,请把你编译的代码类似特征. Input 測试输入包括若干測试用例. 每一个測试用例的第1行包括两个整数 N ...
- EXCEL排序(hdu 1862)
其实这个题吧,就是发出来玩玩,会用sort就很easy了,有一个小小的知识点:比较字符串字典序的大小用strcmp函数. strcmp(a,b)<0说明a的字典序小于b的字典序. 上题: Inp ...
- 每日一九度之 题目1023:EXCEL排序
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:18804 解决:4240 题目描述: Excel可以对一组纪录按任意指定列排序.现请你编写程序实现类似功能. 对每个测试用例 ...
- EXCEL排序
题目描述: Excel可以对一组纪录按任意指定列排序.现请你编写程序实现类似功能. 对每个测试用例,首先输出1行“Case i:”,其中 i 是测试用例的编号(从1开始).随后在 N ...
随机推荐
- mysql扩展库操作mysql数据库
环境搭建 启用mysql扩展库,在php.ini文件中去配置mysql扩展库 extension=php_mysql.dll 查询数据库 1.建库建表 //建库testcreate database ...
- php缓存相关
在php运行期间,php引擎要对php源码进行处理,(词法分析,语法分析等)然后生成opcode. 然后再运行.在这个阶段可以把opcode缓存起来,当下次需要运行这段程序的时候,就避免了再次 进行词 ...
- php代码锁
在为台湾公司开发“保证金交易系统”的过程中,出现了这样的情况: 一个间银行有n个操作员,可以同时在系统中下单,系统需要判断银行的保证金是否足够来决定是否可以下单成功.账号保证金足够,正常下单,账号保证 ...
- Python Tips and Traps(二)
6.collections 模块还提供有OrderedDict,用于获取有序字典 import collections d = {'b':3, 'a':1,'x':4 ,'z':2} dd = col ...
- cursor_sharing
CURSOR_SHARING Property Description Parameter type String Syntax CURSOR_SHARING = { EXACT | FORCE } ...
- 推送 -- error:Not get deviceToken yet
获取不到devicetoken请检查: 1) 请检查你的pushconfig里的appkey与应用详情中是否一致 2) bundleid有3处需要检查是否一致:a.你的应用详情中的bu ...
- Dynamips做CCNA的实验,说是找不到telnet的解决方案
01.如果你的系统是32位的系统. 控制面板-程序与功能-启动或关闭windows功能-开启telnet(重启计算机就可以用telnet了) 02.如果你的系统是64位的系统. (1)控制面板-程序与 ...
- Cloud Test 在手,宕机时让您不再措手不及
1月28日,Github 上午 10:04 分宕机了,导致全球各地的用户不能访问.官方回复可能是网络中断引起的,到 10:28 分已经可以正常访问. 对于互联网公司来说,一旦宕机就会措手不及,如何才能 ...
- JavaScript clearInterval定时器失效原因
检查下是不是setInterval重复执行(两次以上<!-- 文件上传板块 --> <div id="adUploadWindow" class="ea ...
- Hibernate 多对一关系中,在多的一方进行数据的插入
先看两个映射关系: 部门: <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//H ...