当前位置: 首页 > news >正文

1085 PAT单位排行

每次 PAT 考试结束后,考试中心都会发布一个考生单位排行榜。本题就请你实现这个功能。

输入格式:

输入第一行给出一个正整数 N(≤105),即考生人数。随后 N 行,每行按下列格式给出一个考生的信息:

准考证号 得分 学校

其中准考证号是由 6 个字符组成的字符串,其首字母表示考试的级别:B代表乙级,A代表甲级,T代表顶级;得分是 [0, 100] 区间内的整数;学校是由不超过 6 个英文字母组成的单位码(大小写无关)。注意:题目保证每个考生的准考证号是不同的。

输出格式:

首先在一行中输出单位个数。随后按以下格式非降序输出单位的排行榜:

排名 学校 加权总分 考生人数

其中排名是该单位的排名(从 1 开始);学校是全部按小写字母输出的单位码;加权总分定义为乙级总分/1.5 + 甲级总分 + 顶级总分*1.5整数部分考生人数是该属于单位的考生的总人数。

学校首先按加权总分排行。如有并列,则应对应相同的排名,并按考生人数升序输出。如果仍然并列,则按单位码的字典序输出。

输入样例:

10
A57908 85 Au
B57908 54 LanX
A37487 60 au
T28374 67 CMU
T32486 24 hypu
A66734 92 cmu
B76378 71 AU
A47780 45 lanx
A72809 100 pku
A03274 45 hypu

输出样例:

5
1 cmu 192 2
1 au 192 3
3 pku 100 1
4 hypu 81 2
4 lanx 81 2

这道题又是一个关于map的使用,参考了下mooc期末成绩用用map统计输入学校名,成绩 。map分别存储 学校名,学生人数,得分。 测试点5没过,主要是因为,在计算 甲级和顶级得分的时候直接取整了。应该是总分最后取整。我的代码

#include<vector>
#include <iostream>
#include<map>
#include<algorithm>
#include<string>
#include<cctype>
using namespace std;struct node
{string name;int score;int count;}temp;
int main()
{map<string, node> item;map<string, int>mp;vector<node> result;map<string,node>mp1;int n;cin >> n;for (int i = 0; i < n; i++){string id;int _score;string _name;cin >> id>>_score>>_name;transform(_name.begin(), _name.end(),_name.begin(), [](unsigned char c){return tolower(c);});item[_name].name = _name;if (id[0] == 'A'){item[_name].score += 10*_score;}else if (id[0] == 'B'){item[_name].score += 10*1.0*_score / 1.5;}else{item[_name].score +=10*1.0* _score * 1.5;}item[_name].count++;}for (auto it = item.begin(); it != item.end(); it++){temp.name = it->second.name;temp.score = it->second.score/10;temp.count = it->second.count;result.push_back(temp);}cout << result.size() << endl;sort(result.begin(), result.end(), [](const node& a, const node& b){if (a.score == b.score){if (a.count == b.count){return a.name < b.name;}else{return a.count < b.count;}}else{return a.score > b.score;}});int num = 1;cout << num << " " << result[0].name << " " << result[0].score << " " << result[0].count << endl;for (int i = 1; i < result.size(); i++){if (result[i-1].score == result[i].score){cout << num<< " " << result[i].name << " " << result[i].score << " " << result[i].count << endl;}else{cout << i+1 << " " << result[i].name << " " << result[i].score << " " << result[i].count << endl;num=i+1;}   }
}

相关文章:

1085 PAT单位排行

每次 PAT 考试结束后&#xff0c;考试中心都会发布一个考生单位排行榜。本题就请你实现这个功能。 输入格式&#xff1a; 输入第一行给出一个正整数 N&#xff08;≤105&#xff09;&#xff0c;即考生人数。随后 N 行&#xff0c;每行按下列格式给出一个考生的信息&#xff…...

知识库1: 什么是知识库?

知识库&#xff08;Knowledge Base, KB&#xff09;是一个存储和组织知识的信息系统或数据集合&#xff0c;用于保存、管理和访问结构化或非结构化的信息。它的目的是帮助人们快速获取所需的知识、解答问题或支持决策。知识库可以被广泛应用于技术支持、教育、研究以及智能系统…...

[SAP ABAP] 程序备份

备份当前程序到本地的方式如下&#xff1a; 1.复制粘贴 Ctrl A 、Ctrl V 2.【实用程序】|【更多实用程序】|【上载/下载】|【下载】 ​ 3.快捷键&#xff0c;支持多种格式导出(.abap .html .pdf 等) 在事务码SE38(ABAP编辑器)屏幕右下角&#xff0c;点击【Options选项】图…...

SpringBoot 自动装配原理及源码解析

目录 一、引言 二、什么是 Spring Boot 的自动装配 三、自动装配的核心注解解析 3.1 SpringBootApplication 注解 &#xff08;1&#xff09;SpringBootConfiguration&#xff1a; &#xff08;2&#xff09;EnableAutoConfiguration&#xff1a; &#xff08;3&#xf…...

【专题】2024年悦己生活消费洞察报告汇总PDF洞察(附原数据表)

原文链接&#xff1a; https://tecdat.cn/?p38654 在当今时代背景下&#xff0c;社会发展日新月异&#xff0c;人们的生活方式与消费观念正经历深刻变革。MoonFox 月狐数据的《2024 年悦己生活消费洞察报告》聚焦于这一充满活力与变化的消费领域。随着就业、婚姻等社会压力的…...

empire靶机

打开靶机 我们先查看页面源代码&#xff0c;发现什么也没有 再去用nmap扫描 nmap -sV -p- 192.168.95.144 发现也没什么用 我们在用dirb扫一下 dirb http://192.168.95.144 我们发现了robots.txt并且响应码是200&#xff0c;去访问一下 又得到了一个目录&#xff0c;去访问…...

uniapp 判断多选、选中取消选中的逻辑处理

一、效果展示 二、代码 1.父组件: :id=“this.id” : 给子组件传递参数【id】 @callParentMethod=“takeIndexFun” :给子组件传递方法,这样可以在子组件直接调用父组件的方法 <view @click="$refs.member.open()"...

arthas查看拼接好参数的sql, redis, es完整可直接执行的命令

arthas查看拼接好参数的sql, redis, es完整可直接执行的命令 arthas查看sql可执行命令arthas查看redis可执行命令arthas查看es可执行命令相关链接 经常修bug的时候, 拿不到能够执行的命令, 真是太难受了 arthas查看sql可执行命令 # mybatis plus (参数和sql分离了) watch org.…...

Flamingo:少样本多模态大模型

Flamingo&#xff1a;少样本多模态大模型 论文大纲理解1. 确认目标2. 分析过程&#xff08;目标-手段分析&#xff09;3. 实现步骤4. 效果展示5. 金手指 解法拆解全流程核心模式提问Flamingo为什么选择使用"固定数量的64个视觉tokens"这个特定数字?这个数字的选择背…...

nacos-gateway动态路由

在Nacos官网中给出了手动监听Nacos配置变更的SDK&#xff1a; Nacos Java SDK 所需依赖 <!--统一配置管理--> <dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> <…...

Kotlin 协程基础知识总结二 —— 启动与取消

协程启动与取消的主要内容&#xff1a; 启动协程&#xff1a;启动构建器、启动模式、作用域构建器、Job 生命周期取消协程&#xff1a;协程的取消、CPU 密集型任务取消、协程取消的副作用、超时任务 1、协程构建器 &#xff08;P20&#xff09;launch 与 aysnc 两种协程构建…...

【漏洞复现】Struts2(CVE-2024-53677)任意文件上传逻辑绕过漏洞

文章目录 前言一、漏洞描述二、漏洞详情三、影响版本四、危害描述五、漏洞分析六、漏洞复现七、修复建议前言 Struts2框架是一个用于开发Java EE网络应用程序的开放源代码网页应用程序架构。它利用并延伸了Java Servlet API,鼓励开发者采用MVC架构。Struts2以WebWork优秀的设…...

使用 IDE生成 Java Doc

使用步骤 Android Studio界面->Tools->Generate JavaDoc zh-CN -encoding UTF-8 -charset UTF-8 -classpath “C:\Users\fangjian\AppData\Local\Android\Sdk\platforms\android-34\android.jar” 报错问题 错误: 目标 17 不允许选项 --boot-class-path 如果你正在使用…...

AWS、Google Cloud Platform (GCP)、Microsoft Azure、Linode和 桔子数据 的 价格对比

要对比 AWS、Google Cloud Platform (GCP)、Microsoft Azure、Linode 和 桔子数据 的 价格&#xff0c;我们需要先了解每个平台的定价模型、服务类型以及不同服务之间的价格差异。以下是根据各个平台常见服务&#xff08;如计算实例、存储、数据传输等&#xff09;做的一个 简化…...

【C++篇】AVL树的实现

前言 本篇是基于二叉搜索树写的&#xff0c;详情可以去看上篇【二叉搜索树】 一&#xff0c;AVL树的概念 &#xff08;1&#xff09;&#xff0c;AVL树是一颗二叉搜索树&#xff0c;它是一棵空树或者是具备以下性质的二叉搜索树&#xff1a;它的左右子树都是AVL树&#xff…...

VIVO Android面试题及参考答案

请重写算法题:求数组的全排列。 思路: 要获取一个数组的全排列,我们可以利用回溯算法。具体来说,回溯算法通过递归的方式逐步生成排列,在每一步都将一个元素加入排列中,然后在下一步递归中排除已选元素,回溯的时候撤销选择,尝试其他可能。 步骤: 递归生成排列: 使…...

联邦大模型微调

微调&#xff08;Fine-tuning&#xff09;是一种迁移学习的技术&#xff0c;用于在一个已经预训练好的模型基础上&#xff0c;通过进一步训练来适应特定的任务或数据集。微调可以在具有相似特征的任务之间共享知识&#xff0c;从而加快训练速度并提高模型性能。 微调步骤&…...

DigitalOcean Kubernetes现已支持VPC natvie集群

DigitalOcean Kubernetes (DOKS)的VPC natvie集群功能现已正式上线&#xff01;这一新功能实现了DOKS集群与虚拟私有云&#xff08;VPC&#xff09;资源之间的无缝集成&#xff0c;提升了工作负载的网络灵活性和可扩展性。 什么是VPC natvie 集群&#xff1f; VPC natvie 集群支…...

【每日学点鸿蒙知识】H5与C++通讯、动态参数化配置、ArkTS调用JS、Json对象转换、showToast在多次调用问题

1、HarmonyOS h5页面和C如何进行双向通讯&#xff1f; 前的规格是H5只能和ArkTS通讯&#xff0c;ArkTS通过NDK接口与C通讯&#xff0c;只有网络拦截有C接口。参考链接&#xff1a;https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/_web-V5 2、HarmonyO…...

ZC706开发板教程:使用SD卡启动工具烧写flash

在使用开发板的过程中&#xff0c;常常需要通过 Flash 模式启动。然而&#xff0c;使用 JTAG 模式在线烧写 flash 的过程既繁琐又耗时&#xff0c;许多用户对此表示困扰。本期将为您提供解决方案&#xff0c;以简化这一流程。 我们分析正常的flash烧写过程&#xff0c;就是通过…...

问题-01

Mybatis比较失效问题 1、问题复现 whetherPromoterNull是字符串类型&#xff0c;0使用单引号包裹&#xff0c;进行比较时发现不起作用 <if test"whetherPromoterNull ! null and whetherPromoterNull.trim() 0"> and sui.share_user_id is not null</if&g…...

内容营销专家刘鑫炜:误区四,目标不明,营销如同“盲头苍蝇”?

我们经常会遇到这样的客户&#xff0c;稿件提交过来后&#xff0c;一会儿说要发这个媒体&#xff0c;不一会儿又要发那个媒体&#xff0c;而且这两个媒体根本没有关联性&#xff0c;这时候&#xff0c;我们都会问客户&#xff0c;你推广这篇稿件的目的是什么&#xff0c;是为了…...

java基础1:处理Map

一、适用场景&#xff1a;相对Map排序&#xff0c;想获取其中最大或最小值。 1、获取map集合里&#xff0c;获取 max(value)对应的key 1)、方式1 Testpublic void MapInnerMaxValue() {HashMap<String, Integer> hashMap new HashMap<>();hashMap.put("a&q…...

企业销售人员培训系统|Java|SSM|VUE| 前后端分离

【技术栈】 1⃣️&#xff1a;架构: B/S、MVC 2⃣️&#xff1a;系统环境&#xff1a;Windowsh/Mac 3⃣️&#xff1a;开发环境&#xff1a;IDEA、JDK1.8、Maven、Mysql5.7 4⃣️&#xff1a;技术栈&#xff1a;Java、Mysql、SSM、Mybatis-Plus、VUE、jquery,html 5⃣️数据库可…...

设计模式-责任链模式

一、简介 责任链模式&#xff08;Chain of Responsibility Pattern&#xff09;是一种行为型设计模式&#xff0c;用于将请求的发送者与接收者解耦&#xff0c;使多个处理对象都有机会处理该请求。这些处理对象通过形成一条链式结构依次处理请求&#xff0c;直到某个对象能够完…...

04、Spring MVC

Spring MVC是Spring的Web模块,用来开发Web应用的,它最终作为B/S、C/S模式下的Server端 Web应用的核心就是处理HTTP请求并响应。 一、关于两种开发模式说明 我们使用Spring MVC有两个开发模式 前后分离(数据与页面分离) @ResponseBody@RestController其涉及的生要机制是:…...

K8S 黑魔法之如何从 Pod 拿到节点的命令行

搞 K8S 运维的时候&#xff0c;偶尔会遇到一个难题&#xff0c;定位到问题出在某个节点上&#xff0c;而由于权限审批&#xff0c;错误配置等等各种原因&#xff0c;没有办法拿到节点的 SSH 权限&#xff0c;无法进入节点命令行进一步排障。 这个时候&#xff0c;就可以用这个…...

谷歌用Anthropic的Claude帮Gemini“打磨”性能

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…...

React性能优化:构建更高效的应用

在现代前端开发中,React已经成为构建复杂、交互频繁应用的首选框架。然而,随着应用规模的扩大和功能的丰富,组件的频繁重渲染可能会成为性能瓶颈,影响用户体验。为了提升React应用的性能,开发者需要掌握一系列性能优化技巧和工具。本文将详细介绍React性能优化的各个方面,…...

Linux从0到1——线程同步和互斥【互斥量/条件变量/信号量/PC模型】

Linux从0到1——线程同步和互斥 1. Linux线程互斥1.1 问题引入1.2 互斥相关概念1.3 多执行流并发访问公共资源的数据不一致问题1.4 互斥量&#xff08;锁&#xff09;1.5 改进抢票系统1.6 锁的简单封装1.7 锁的实现原理1.8 可重入VS线程安全1.9 死锁 2. Linux线程同步2.1 理解同…...

无人机驾驶证对入伍有帮助吗?

无人机驾驶证对入伍确实有一定的帮助&#xff0c;主要体现在以下几个方面&#xff1a; 一、提升专业技能 无人机操作是一项高度专业化的技能&#xff0c;需要掌握飞行原理、航电系统、任务规划、紧急处理等多方面的知识。通过考取无人机驾驶证&#xff0c;个人可以系统地学习这…...

【贪心算法】贪心算法七

贪心算法七 1.整数替换2.俄罗斯套娃信封问题3.可被三整除的最大和4.距离相等的条形码5.重构字符串 点赞&#x1f44d;&#x1f44d;收藏&#x1f31f;&#x1f31f;关注&#x1f496;&#x1f496; 你的支持是对我最大的鼓励&#xff0c;我们一起努力吧!&#x1f603;&#x1f…...

MySQL 锁概述

1.锁的分类 根据不同的分类角度可将锁分为&#xff1a; 按是否共享分&#xff1a;S 锁、X 锁按粒度分&#xff1a;表级锁、行级锁、全局锁&#xff08;锁整个库&#xff09;、页锁&#xff08;锁数据页&#xff09;意向锁&#xff1a;意向 S 锁、意向 X 锁&#xff1a;都是表…...

springboot502基于WEB的牙科诊所管理系统(论文+源码)_kaic

牙科诊所管理系统的设计与实现 摘要 近年来&#xff0c;信息化管理行业的不断兴起&#xff0c;使得人们的日常生活越来越离不开计算机和互联网技术。首先&#xff0c;根据收集到的用户需求分析&#xff0c;对设计系统有一个初步的认识与了解&#xff0c;确定牙科诊所管理系统的…...

overleaf中出现TeX capacity exceeded PDF object stream buffer=5000000的原因和解决方案

在插入pdf 配图后&#xff0c;编译出错提示信息如图&#xff0c;很可能的一个原因是pdf文件大小太大了&#xff0c;最好压缩一下&#xff0c;压缩到1MB以内。...

LabVIEW神经肌肉电刺激与记录系统

神经肌肉电刺激技术在康复医学和神经科学领域占有重要地位。基于LabVIEW开发了神经肌肉电刺激与记录系统&#xff0c;该系统具备可控电脉冲输出与高效数据采集功能&#xff0c;适用于临床和科研领域。 项目背景 神经肌肉电刺激技术用于治疗各类神经和肌肉系统疾病&#xff0c;…...

【CSS in Depth 2 精译_096】16.4:CSS 中的三维变换 + 16.5:本章小结

当前内容所在位置&#xff08;可进入专栏查看其他译好的章节内容&#xff09; 第五部分 添加动效 ✔️【第 16 章 变换】 ✔️ 16.1 旋转、平移、缩放与倾斜 16.1.1 变换原点的更改16.1.2 多重变换的设置16.1.3 单个变换属性的设置 16.2 变换在动效中的应用 16.2.1 放大图标&am…...

Label-Studio X SAM 半自动化标注

教程&#xff1a;playground/label_anything/readme_zh.md at main open-mmlab/playground GitHub B站视频&#xff1a;Label Studio x Segment Anything Model 半自动化标注_哔哩哔哩_bilibili 需要注意&#xff1a; 1.LINUX上跑比较方便 2.中文路径、文件名闯大祸 3. 4…...

Mono里运行C#脚本8—mono_image_storage_open打开EXE文件

Mono里运行C#脚本8—mono_image_storage_open打开EXE文件 前面分析哈希表的实现,以及文件打开的底层函数,还有保存到HASH表里的数据结构。 static MonoImageStorage * mono_image_storage_open (const char *fname) { char *key = NULL; key = mono_path_resolve_symlinks…...

【WebSocket】tomcat内部处理websocket的过程

websocket请求格式 浏览器请求 GET /webfin/websocket/ HTTP/1.1。 Host: localhost。 Upgrade: websocket。 Connection: Upgrade。 Sec-WebSocket-Key: xqBt3ImNzJbYqRINxEFlkg。 Origin: http://服务器地址。 Sec-WebSocket-Version: 13。 服务器响应 HTTP/1.1 101 Swi…...

将一个组件的propName属性与父组件中的variable变量进行双向绑定的vue3(组件传值)

封装组件看这个&#xff0c;然后理解父子组件传值 应用场景&#xff1a; 1.使用v - model语法实现双向绑定&#xff08;传值两边都不用定义方法接数据&#xff09; 1.子组件 1. update:modelValue事件是MultiSelect组件对象自带的事件 2.:options"countries" opti…...

Linux下通用型shellcode的编写

实验目的及要求 目的&#xff1a; 通过对本实验执行过程的理解&#xff0c;认真分析总结&#xff0c;能够独立的在 Linux 下进行 shellcode 的编写。 要求&#xff1a; &#xff08;1&#xff09;%70&#xff1a;完成对 shellcode 的分析及提取 &#xff08;2&#xff09;%…...

STM32F103RCT6学习之二:GPIO开发

GPIO基础 1.简介 2.GPIO基本结构 3.种模式 GPIO基本功能 1.输出功能--LED灯闪烁 1)进行基本配置 2)编辑代码 主要在main.c中编辑。 int main(void) {/* USER CODE BEGIN 1 *//* USER CODE END 1 *//* MCU Configuration------------------------------------------------…...

kong网关使用pre-function插件,改写接口的返回数据

一、背景 kong作为api网关&#xff0c;除了反向代理后端服务外&#xff0c;还可对接口进行预处理。 比如本文提及的一个小功能&#xff0c;根据http header某个字段的值&#xff0c;等于多少的时候&#xff0c;返回一个固定的报文。 使用到的kong插件是pre-function。 除了上…...

C++、Python有哪些相同和不同

C 和 Python 是两种流行的编程语言&#xff0c;设计理念和应用场景各有不同&#xff0c;但也有一些相似之处。以下是它们在语言特性、性能、语法等方面的相同点和不同点的比较&#xff1a; 相同点 支持多种编程范式&#xff1a; 面向对象编程 (OOP)&#xff1a;两者都支持类、继…...

Spring Boot 自动配置:从 spring.factories 到 AutoConfiguration.imports

Spring Boot 提供了强大的自动配置功能&#xff0c;通过约定优于配置的方式大大简化了应用开发。随着版本迭代&#xff0c;自动配置的实现方式也逐渐优化&#xff0c;从早期的 spring.factories 文件到最新的 META-INF/spring/org.springframework.boot.autoconfigure.AutoConf…...

HarmonyOS Next 应用元服务开发-应用接续动态配置迁移按需退出

按需退出&#xff0c;支持应用动态选择迁移成功后是否退出迁移源端应用&#xff08;默认迁移成功后退出迁移源端应用&#xff09;。如果应用不想让系统自动退出迁移源端应用&#xff0c;则可以设置不退出&#xff0c;参数定义见SUPPORT_CONTINUE_SOURCE_EXIT_KEY。 示例&#x…...

SQL-leetcode-180. 连续出现的数字

180. 连续出现的数字 表&#xff1a;Logs -------------------- | Column Name | Type | -------------------- | id | int | | num | varchar | -------------------- 在 SQL 中&#xff0c;id 是该表的主键。 id 是一个自增列。 找出所有至少连续出现三次的数字。 返回的…...

使用Python pickle模块进行序列化

使用Python pickle模块进行序列化 在Python中&#xff0c;pickle模块是一个用于实现数据序列化与反序列化的强大工具。与json模块不同的是&#xff0c;pickle支持将几乎所有的Python对象进行序列化&#xff0c;包括字典、列表、类实例&#xff0c;甚至函数。这使得它在处理复杂…...

责任链模式(ChainofResponsibilityPattern)

文章目录 1.定义2.结构3.问题描述代码实现 1.定义 允许你将请求沿着处理者链进行发送。 收到请求后&#xff0c; 每个处理者均可对请求进行处理&#xff0c; 或将其传递给链上的下个处理者。 2.结构 处理者(Handler)&#xff1a;声明了所有具体处理者的通用接口。 该接口通常…...