时间限制:C/C++ 2秒,其他语言4秒
空间限制:C/C++ 262144K,其他语言524288K
64bit IO Format: %lld

题目描述

第一次期中考终于结束啦!沃老师是个语文老师,他在评学生的作文成绩时,给每位学生的分数都是一个小于10的非负小数。

Amy 8.999999999999999999999999999999999999999990000

Bob 8.9999999999999999999999999999999999999999800

Cat 8.9999999999999999999999999999999999999999899999999

沃老师并不会告诉大家分数的排名,但学生间竞争激烈,大家都想知道自己的作文成绩在班上的排名。

但由于作文分数的小数部分可能超级长,难以用肉眼比较两个数的大小关系,请你帮忙写个程序,把所有学生按照作文分数排序吧〜

输入描述:

输入共有N + 1行。
第一行有一个正整数N,代表班上有几个人。
接下来N行中的第i行,包含一个字符串namei,以及一个小数scorei,分别代表第i个人的名字以及第i个人的作文得分。

输出描述:

输出总共N行,每行由一个名字和一个小数构成,第i行代表着分数第i高的人的名字以及他的作文得分,代表作文得分的小数必须和输入一模一样,也就是原本末尾有多少零,输出也要有相同数量的零。
若分数相同,则名字字典序比较小的放在前面。

题解

若分数没有末尾零

若代表score的小数没有末尾零,我们就只要把score当作字串排序就可以了,可以使用trie来解它,甚至使用STL的
排序直接排序字串也OK。
有末尾零的话,则...

有末尾零的话,就把末尾零从字串中全部拔除,排完序后再把零补回来就行了

代码

#include<bits/stdc++.h>
using namespace std;
const int maxn = 1e6+10;
typedef struct node {string name,score;int zero_cnt;void init() {zero_cnt = 0;int len = score.size();while(zero_cnt < len && score[len - zero_cnt -1] == '0') zero_cnt++;score.resize(len-zero_cnt);}bool operator < (const node &b) const {if(score == b.score) return name < b.name;return score > b.score;}
}Person;
Person persons[maxn];
int main()
{int n;while(~scanf("%d",&n)){for(int i=0;i<n;i++) cin>>persons[i].name>>persons[i].score,persons[i].init();stable_sort(persons,persons+n);for(int i=0;i<n;i++)cout<<persons[i].name<<" "<<persons[i].score + string(persons[i].zero_cnt,'0')<<endl;}return 0;
}

[Niuke-Exercise15]沃老师学生的成绩相关推荐

  1. 牛客每日练习----一个背包问题,判断奥运年,沃老师学生的成绩

    我喜欢给自己压力,必须得定一个很高的目标,逼自己朝着这个目标前进,不管会不会实现,都是一个动力.                                      ----喻言 链接:http ...

  2. L1-030 一帮一 (15分) “一帮一学习小组”是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组。本题就请你编写程序帮助老师自动完成这个分配工作,即在得到全班学生

    L1-030 一帮一 (15分) "一帮一学习小组"是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组.本题就请你编写程序帮助老师自动完成这个分配工 ...

  3. “一帮一学习小组”是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组。本题就请你编写程序帮助老师自动完成这个分配工作,即在得到全班学生的排名后,在当前尚未分组的学生中,

    "一帮一学习小组"是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组.本题就请你编写程序帮助老师自动完成这个分配工作,即在得到全班学生的排名后,在当 ...

  4. L1-030——一帮一学习小组”是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组。

    一帮一学习小组"是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组.本题就请你编写程序帮助老师自动完成这个分配工作,即在得到全班学生的排名后,在当前尚未分组的 ...

  5. 40、查询选修“张三”老师所授课程的学生中成绩最高的学生姓名及其成绩(重要top)

    -- 40.查询选修"张三"老师所授课程的学生中成绩最高的学生姓名及其成绩(重要top)SELECT st.s_name,sc.s_score FROM student as st ...

  6. “一帮一学习小组”是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组.

    "一帮一学习小组"是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组.本题就请你编写程序帮助老师自动完成这个分配工作,即在得到全班学生的排名后,在当 ...

  7. 计算机二级小蒋是一位中学老师,解析:小蒋是一位中学教师,在教务处负责初一年级学生的成绩管理。由于学校地处偏远地区,缺乏必要的教学 - 计算机二级 - 看书网站...

    小蒋是一位中学教师,在教务处负责初一年级学生的成绩管理.由于学校地处偏远地区,缺 乏必要的教学设施,只有一台配置不太高的PC可以使用.他在这台电脑中安装了Microsoft Office,决定通过Ex ...

  8. 老师利用计算机分析学生成绩属于什么,计算机二级考试真题-Excel-小蒋-老师学生成绩分析...

    小蒋是一位中学教师,在教务处负责初一年级学生的成绩管理.由于学校地处偏远地区,缺乏必要的教学设施,只有一台配置不太高的PC可以使用.他在这台电脑中安装了 Microsoft Office,决定通过 E ...

  9. 《MySQL数据操作与查询》- 维护学生信息、老师信息和成绩信息 支持按多种条件组合查询学生信息和成绩信息

    综合项目需求 一.系统整体功能 系统需支持以下功能: 维护学生信息.老师信息和成绩信息 支持按多种条件组合查询学生信息和成绩信息 学生 Student(id,班级id,学号,姓名,性别,电话,地址,出 ...

最新文章

  1. Spring Cloud企业微服务分布式云架构技术点整合
  2. pandas使用dropna函数计算返回dataframe中不包含缺失值的行索引列表list(index of rows without missing values in dataframe)
  3. (一)Audio子系统之AudioRecord.getMinBufferSize
  4. Hibernate配置文件,省的到处找了
  5. Python基础教程(八):日期和时间、文件I/O、异常处理
  6. matlab如何画图时去掉陆地点,科学网—Matlab m_map一张地图上使用用多个colormap以及patch精细岸线数据去除河流 - 肖鑫的博文...
  7. 外观模式源码解析(springjdbc+myabtis+tomcat)
  8. PMP之项目整合管理
  9. IntelliJ IDEA 中 右键新建时,选项没有Java class的解决方法和具体解释
  10. 《操作系统》OS学习(十):进程控制
  11. ubuntu-server-18.04 设置开机启动脚本
  12. bzoj 1858: [Scoi2010]序列操作
  13. es支持的操作及性能
  14. Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.8.2:deploy
  15. 阿克曼函数求解(递归和非递归)
  16. 2021-09-29 使用sql查询oracle建表语句
  17. 学生成绩管理系统 需求规格说明书
  18. eyoucms相关问题总结
  19. 【day4】【洛谷算法题】-P5708三角形面积-刷题反思集[入门1顺序结构]
  20. 红旗 Linux 5.0 正式版下载地址

热门文章

  1. 速食领域会不会成为食品电商突破点?
  2. 2021年安全生产模拟考试(全国特种作业操作证焊工作业-压力焊模拟考试题库二)
  3. 华大HC芯片实现定时器计数
  4. 华为云平台web架构部署
  5. AE - AE CC2018安装提示系统不兼容
  6. 远程通讯控制器(T-BOX)
  7. 多少达芬奇发明实际起作用
  8. 【安全牛学习笔记】Smurf攻击、Sockstress
  9. 最受欢迎的十大开源黑客工具推荐
  10. Java 同步、异步