【ACM】hdu_1862_EXCEL排序_201308091948

EXCEL排序

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


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年

 

Recommend
lcy

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

typedef struct Node{
    char num[8];
    char name[10];
    int cj;
}Node;
Node s[110000];

int cmpnum(const void *a,const void *b)
{
    Node *c = (Node *)a;
    Node *d = (Node *)b;
    return strcmp(c->num , d->num);
}
int cmpname(const void *a,const void *b)
{
    Node *c = (Node *)a;
    Node *d = (Node *)b;
    if(strcmp(c->name,d->name)!=0)
    return strcmp(c->name , d->name) ;
    else
    return strcmp(c->num , d->num);
}
int cmpcj(const void *a,const void *b)
{
    Node *c = (Node *)a;
    Node *d = (Node *)b;
    if(c->cj!=d->cj)
    return c->cj - d->cj;
    else
    return strcmp(c->num , d->num);
}
int main()
{
    int m,n,k=1;
    while(scanf("%d %d",&n,&m),n)
    {
        int i,j;
        for(i=0;i<n;i++)
        scanf("%s%s%d",s[i].num,s[i].name,&s[i].cj);
        if(m==1)
        qsort(s,n,sizeof(s[0]),cmpnum);
        if(m==2)
        qsort(s,n,sizeof(s[0]),cmpname);
        if(m==3)
        qsort(s,n,sizeof(s[0]),cmpcj);
        printf("Case %d:\n",k++);
        for(i=0;i<n;i++)
        printf("%s %s %d\n",s[i].num,s[i].name,s[i].cj);
    }
    return 0;
}

 

qsort--结构体

转载于:https://www.cnblogs.com/xl1027515989/p/3248993.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/493876.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

多变量线性回归

目前为止,我们探讨了单变量/特征的回归模型,现在我们对房价模型增加更多的特征, 例如房间数楼层等,构成一个含有多个变量的模型,模型中的特征为(x1,x2,…,xn) 增添更多特征后,我们引入一系列新的注释: n 代表特征的数量 x(i)代表第 i 个训练实例,是特征矩阵中的第 i 行,是一…

人工智能乌托邦 迪拜认为2071年人类应该这样生活!

来源&#xff1a;网易智能不同于硅谷老牌的科技力量&#xff0c;迪拜一直是独特的存在。他们日益崛起的科技实力正在被验证&#xff0c;无论是全面AI化的基础建设和城市治安力量&#xff0c;还是频频登上全球科技头条的机器人警察和空中出租车&#xff0c;迪拜试图摆脱很多人眼…

[leetcode]Decode Ways

动态规划。要注意waydp[i-1]或dp[i-2]以及way1的条件。我看有的人把数组命名为count的。 public class Solution {public int numDecodings(String s) {// Start typing your Java solution below// DO NOT write main() functionint len s.length();if (len 0) return 0;int…

逻辑回归与正则化

在分类问题中,你要预测的变量 y 是离散的值,我们将学习一种叫做逻辑回归 (Logistic Regression) 的算法,这是目前最流行使用最广泛的一种学习算法。 在分类问题中,我们尝试预测的是结果是否属于某一个类(例如正确或错误)。分类问 题的例子有:判断一封电子邮件是否是垃圾邮件;判…

万字报告!一文看懂全球车厂的技术家底模块化平台

来源&#xff1a;智东西摘要&#xff1a;介绍模块化平台以及该平台对车企的重要意义&#xff0c;详解车企模块化平台布局。汽车的研发制造方式经历了手工作坊式到标准化流水线再到平台化&#xff0c;目前主流车企纷纷采取模块化平台方式。汽车模块化平台研发制造是指车企基于通…

记录下Lambda常用的表现形式

纯粹记录下Lambda的表现形式&#xff1a; (x, y) > x * y;//多参数&#xff0c;隐式类型>表达式 x > x * 10;//单参数&#xff0c;隐式类型>表达式 x > { return x * 10; }; //单参数&#xff0c;隐式类型>语句块 (int x) > x * 10;//单参数&#xff0c;显…

西湖大学全披露:68位顶级科学家加盟,已获捐资35亿,最小捐赠者12岁

来源&#xff1a;量子位最终&#xff0c;2018年10月20日&#xff0c;成为了西湖大学的成立日。在刚结束的成立大会上&#xff0c;5名诺贝尔奖得主、70余位国内外校长及代表、近百位捐赠人齐聚。可谓少长咸集&#xff0c;高朋满座&#xff0c;生而备受期待。而且就在创立大会上&…

字体大宝库:设计师必备的专业免费英文字体

字体绝对是每一个设计非常重要的部分&#xff0c;设计者总是希望有最好的免费字体&#xff0c;以保持他们字体库的更新。所以今天我要向设计师们分享一个专业的免费英文字体集合。这些免费的字体是适用于任何类型的图形设计&#xff1a;Web&#xff0c;打印&#xff0c;动态图形…

神经网络学习

代价函数 首先引入一些便于稍后讨论的新标记方法: 假设神经网络的训练样本有 m 个,每个包含一组输入 x 和一组输出信号 y,L 表示神经 网络层数,Sl表示每层的 neuron 个数(SL表示输出层神经元个数),SL代表最后一层中处理 单元的个数。 将神经网络的分类定义为两种情况:二类分…

干货|深度!“人工智能+制造”产业发展研究报告

来源&#xff1a;&#xff1a;腾讯研究院工业革命以后的“自动化”概念追求的是机器自动生产&#xff0c;本质是“机器替人”&#xff0c;强调在完全不需要人的情况下进行不间断的大规模机器生产&#xff1b;而“智能化”追求的是机器的柔性生产&#xff0c;本质是“人机协同”…

简明外贸报价单(Price List)范本

简明外贸报价单&#xff08;Price List&#xff09;范本 简明外贸报价单&#xff08;Price List&#xff09;范本 报价单 Price List 报价日期&#xff1a;年 月 日 Supplier   Address   供应商 公司地址 Contact   Approvals   联系人名 产品认证 Tel …

机器学习系统设计与建议

当我们在运用训练好了的模型来预测未知数据的时候发现有较大的误差,我们下一步可以 做什么? 1. 获得更多的训练实例——通常是有效的,但代价较大,下面的方法也可能有效,可 考虑先采用下面的几种方法。 2. 尝试减少特征的数量 3. 尝试获得更多的特征 4. 尝试增加多项式特征…

李飞飞重返斯坦福后的大动作:开启「以人为中心的AI计划」

来源&#xff1a;网络大数据刚刚&#xff0c;李飞飞宣布斯坦福开启「以人为中心的 AI 计划」(Human-Centered AI Initiative&#xff0c;HAI)&#xff0c;该项目由李飞飞和斯坦福大学前教务长 John Etchemendy 共同主导&#xff0c;Chris Manning 也参与其中。李飞飞在 twitter…

前端开发如何做好SEO优化的工作

前端开发工程师不仅需要要跟视觉设计师、交互式设计师配合&#xff0c;完美还原设计图稿&#xff0c;编写兼容各大浏览器、加载速度快、用户体验好的页面。现在还需要跟SEO人员配合&#xff0c;调整页面的代码结构和标签。 一些成熟的平台&#xff0c;在开发初期并没有考虑优化…

支持向量机学习

与逻辑回归和神经网络相比,支持向量机,或者简称 SVM,在学习复杂的非线性 方程时 供了一种更为清晰,更加强大的方式 如果我们用一个新的代价函数来代替,即这条从 0 点开始的水平直线,然后是一条斜 线,像上图。那么,现在让我给这两个方程命名,左边的函数,我称之为cost1(z),同时,…

中国安防行业十年报告:产值增涨四倍!双巨头全球称雄

来源&#xff1a;智东西近年来&#xff0c;安防是一个快速增长的行业&#xff0c; 过去十年&#xff0c; 复合 17%的行业增长率证明了行业的持续性&#xff0c;龙头份额提升持续获得超越平均的增速。 根据历史数据&#xff0c; 2008 年至 2017 年&#xff0c; 十年内中国安防行…

从零开始:iOS(三)

整理一些Objective-c相关知识. c#与objective-c对照着看,一步一步来.重点在oc上. 1:新建类. /*C#*/public class Person{private string name;public string GetName(){return name;}public void SetName(string value){name value;}public static void SayHello(){ /*print h…

聚类算法学习

聚类是一种非监督学习方法 在一个典型的监督学习中,我们有一个有标签的训练集,我们的目标是找到能够区分正 样本和负样本的决策边界,在这里的监督学习中,我们有一系列标签,我们需要据此拟合一 个假设函数。与此不同的是,在非监督学习中,我们的数据没有附带任何标签,我们拿到…

斯坦福大学:极限工况下的无人驾驶路径跟踪|厚势汽车

来源&#xff1a; 同济智能汽车研究所责任编辑&#xff1a;啜小雪文章译自 2017 年美国控制年会的会议论文原标题&#xff1a;Path-Tracking for Autonomous Vehicles at the Limit of Friction原作者&#xff1a;Vincent A. Laurense, Jonathan Y. Gohand J. Christian Gerdes…

SQLite DBHelp

c#连接SQLite SQLite这个精巧的小数据库&#xff0c;无需安装软件&#xff0c;只需要一个System.Data.SQLite.DLL文件即可操作SQLite数据库。SQLite是一个开源数据库&#xff0c;现在已变得越来越流行&#xff0c;它的体积很小&#xff0c;被广泛应用于各种不同类型的应用中。S…