比赛排名预测

发布时间: 2018年3月27日 09:17   最后更新: 2018年3月29日 20:13   时间限制: 1000ms   内存限制: 128M

描述

听说ACM爱好者协会即将举办程序设计大赛啦。这可让编程爱好者们开心坏了,又到了他们可以一展身手的时候了,大家纷纷积极参加报名比赛。A协的小伙伴们一边筹备着比赛,一边也在紧张的准备着比赛,因为他们也报名参加了比赛,也想在比赛中好好表现一番,代表A协拿个好名次。

身为学生教练的fudq,在比赛前想预测下A协同学的比赛排名。已知A协有N位同学参加比赛,fudq根据N位同学平时的表现,从基础功底、勤奋程度、临场发挥这三个方面,给每位同学分别打了个预测分,每位同学最后的得分即为三个预测分之和,分数高的同学排名靠前。

现在fudq打完分了,想让你帮他列一个预测的比赛排名,按分数从高到低排序。

输入

输入第一行是一个正整数N(1 <= N <= 100000)。
接下来输入N行,每行首先输入一个字符串S,代表同学的姓名(S仅由小写字母组成,长度不超过10),
接着输入三个正整数a,b,c,分别表示三个方面的预测分(0<=a,b,c<=1000000)。

输出

输出有N行,按每位同学的总得分从高到低输出每位同学的姓名。如果有两位同学总得分一样,按姓名的字典序排列,即姓名字典序小的排前面。

样例输入1

5
bingfeng 2000 1000 800
xiongmao 900 1000 2100
fudq 1000 1000 1000
ivan 3000 200 600
aurora 2300 1500 3200

样例输出1

aurora
xiongmao
bingfeng
ivan
fudq

提示

数据量较大,请仔细计算时间复杂度,推荐使用效率高的排序方法。

——————————————————————————————————————————

直接一点...我是真的不太会 高效排序

以下是标程:

#include<cstdio>
#include<map>
#include<iostream>
#include<algorithm>
#define MAX 100000
using namespace std;
struct person
{string name;int sc;
}p[MAX+10];
bool cmp(person a,person b)
{if(a.sc!=b.sc)return a.sc>b.sc;return a.name<b.name;//直接排序 系统会根据字典序排列的
}
int main()
{//freopen("data.in","r",stdin);int n;while(cin>>n){for(int i=0;i<n;i++){string n;int s1,s2,s3;cin>>n>>s1>>s2>>s3;p[i].name=n;p[i].sc=s1+s2+s3;}sort(p,p+n,cmp);for(int i=0;i<n;i++)cout<<p[i].name<<endl;}return 0;
}

当时一直被存入数据和排序困扰,还在纠结怎么写字典序排序..看了标程才知道

关键在于编写比较函数和想到用结构体(用Map用sort的时候我不太会..)

#问题求解与编程# 实验二 D 比赛排名预测相关推荐

  1. C++ 实验二 NO.2 身高预测 设faHeight为其父身高,moHeight为其母身高,身高预测公式为:男性成人时身高=(faHeight + moHeight)×0.54cm;女性成人时身高

    //******************************************************************************************** //*程序 ...

  2. 滴滴校招编程题-田径运动会比赛排名

    题目描述 一年一度的X星人田径运动会隆重开幕.小小X报名参加了跳跃比赛,这可是小小X最擅长的项目!跳跃比赛分为两轮,一轮是跳高,一轮是跳远.最终成绩将综合两轮比赛的成绩来确定,并且两轮比赛成绩在最终成 ...

  3. #问题求解与编程# 实验三 G小蝌蚪安家

    小蝌蚪安家 发布时间: 2018年4月2日 20:48   时间限制: 1000ms   内存限制: 128M 描述 在一个矩形区域内,有些地方有水,有些地方没水.所有相邻的有水的地方会共同组成一个水 ...

  4. Java 多线程编程 实验题

    Java 多线程编程 实验二 1.创建键盘操作练习 2. 双线程猜数字 3. 月亮围绕地球 1.创建键盘操作练习 题目描述: 编写一个Java应用程序,在主线程中再创建两个线程, 一个线程负责给出键盘 ...

  5. matlab 数控插补实验,数控插补原理及G代码编程实验.ppt

    数控插补原理及G代码编程实验 数控插补原理及G代码编程实验 机械工程实验教学中心 数控插补原理及G代码编程实验 ★ 二维插补原理实验 ★ 数控代码编程实验 1 实验目的 ★ 使学生掌握逐点比较法.数字 ...

  6. linux 程序实验总结,Linux实验报告(实验四) shell编程实验

    实验四 shell编程实验(二) 班级:姓名:学号:上机时间:年月日 任课教师:实验教师:实验成绩: 一.实验目的 综合Linux常用命令和vi编辑器的使用,熟练掌握shell脚本编程. 二.实验注意 ...

  7. 2017-2018-2 1723《程序设计与数据结构》第八周作业 实验二 第一周结对编程 总结...

    作业地址 第八周作业:https://edu.cnblogs.com/campus/besti/CS-IMIS-1723/homework/1847 (作业界面已评分,可随时查看,如果对自己的评分有意 ...

  8. Java图形编程实验总结_实验二java图形界面编程2015级.doc

    实验二java图形界面编程2015级.doc 实验二JAVA图形界面编程一.实验目的熟悉JAVA运行环境,编程掌握JAVASWING组件的图形界面编程.二.实验环境微机,软件MYECLIPSE,JDK ...

  9. 计算机网络 | 实验二 WINPCWP编程

    实验二 WINPCWP编程 班级 xxx 实验环境 Win10 Pro 1709(64位) 姓名 xxx 开发环境 Visual Studio 2013 学号 xxx 软件版本 WinPcap 4.1 ...

最新文章

  1. Bootstrap按钮
  2. 面试题小记:1、统计字符串出现的次数,2、约瑟夫环问题
  3. Kfold交叉验证心得
  4. linux命令eric,Linux命令行下连接无线网
  5. HALCON示例程序dem_trees.hdev提取树
  6. 16.U-boot的工作流程分析-2440
  7. 海报合成_新年元旦创意合成设计之跨年海报!这组海报我打99分!
  8. TensorFlow手把手教你概率编程:TF Probability内置了开源教材,新手友好
  9. mysql触发器中访问mssql数据表_[数据库]一个利用触发器(trigger)实现数据库表的审计功能(audit)的例子--针对ms sql实现...
  10. jQuery操作DOM节点的相关方法
  11. 一个通用的pytorch使用预训练模型训练本地数据代码--resnet101为例
  12. 小米笔记本适合计算机专业吗,小米笔记本性价比如何?该不该买?这篇最客观了。...
  13. function中this的指向性
  14. wordpress最佳架构_动物和宠物的24个最佳WordPress主题
  15. CapstoneCS5211|CS5211电路|CS5211中文规格书|CS5211设计eDP到LVDS转接板/转换器方案
  16. python自动化测试-最常用的自动化测试框架
  17. Android 车机系统 One Binary 适配白天黑夜的一个方案
  18. M OP N数值运算问题
  19. 【整理分享】14张思维导图构建 Python 核心知识体系
  20. 圆通快递回应内鬼泄露用户信息:严打数据倒卖灰色产业

热门文章

  1. exe免杀宝典 #exe免杀 #Python打包exe
  2. ★ .net应用程序如何表现XP风格?
  3. 这份pdf成功让我拿下了蚂蚁金服、字节跳动、小米等大厂的offer
  4. word简历里如何添加新的一页
  5. Data Oriented Analysis Design
  6. 【Rhapsody学习笔记】3:Dishwasher
  7. 1. 登陆进入linux系统,查看当前系统的分区信息,centos查看系统信息
  8. JavaScript 课后习题答案
  9. 苹果邮箱 android设置字体,MacOS如何修改邮件字体大小?MacOS修改邮件字体大小的方法...
  10. Ubuntu 12.04开启3D桌面特效