问题 B: 运动会项目积分排名

2023-10-19 10:59

本文主要是介绍问题 B: 运动会项目积分排名,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

题目描述

根据学校参加运动会项目的积分情况,计算每个学校所获得的总积分,按照积分高低输出学校以及学校积分。

输入

输入包括多行数据,每行数据依次是学校名称 项目名称 选手姓名 成绩 积分
学校总数不超过10个,学校名称、项目名称和选手姓名是字符串形式,不超过50个字符,成绩为浮点型数据,积分为整数,大于等于0,小于等于10

输出

按照学校获得积分降序排列,每个学校一行,输出学校名称 积分

样例输入 复制

北化 跳高 张三 1.7 7
北大 跳高 李四 1.55 3

样例输出 复制

北化 7
北大 3

俺滴农村方法就是用结构体,然后再排序,

#include<bits/stdc++.h>
using namespace std;struct compete{string school;float credit;bool godie;
}a[1000];int sort1(compete a,compete b)
{return a.school<b.school;
}int sort2(compete a,compete b)
{return a.credit>b.credit;
}int main()
{string school;string sport;string name;float score;float credit;int temp=0;while(cin>>school>>sport>>name>>score>>credit){a[temp].school=school;a[temp].credit=credit;temp++;}sort(a,a+temp,sort1);for(int i=0;i<temp;i++){if(a[i].school==a[i+1].school){a[i+1].credit+=a[i].credit;a[i].godie=true;}}sort(a,a+temp,sort2);for(int i=0;i<temp;i++)if(!a[i].godie)cout<<a[i].school<<" "<<a[i].credit<<endl;
}

再看看老湿的城里人用的方法:

#include<bits/stdc++.h>
using namespace std;
int main()
{map<string,int>mp;string school,project,name;double grade;int score;while(cin>>school>>project>>name>>grade>>score){if(mp.find(school)==mp.end())mp[school]=0;mp[school]+=score;}while(mp.size()>0){map<string,int>::iterator itMax=mp.begin();for(map<string,int>::iterator it=mp.begin();it!=mp.end();it++){if(it->second>itMax->second){itMax=it;}}cout<<itMax->first<<" "<<itMax->second<<endl;mp.erase(itMax);}return 0;
}

 我的方法虽土,但是好理解呀!

 

 

这篇关于问题 B: 运动会项目积分排名的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/239337

相关文章

如何解决idea的Module:‘:app‘platform‘android-32‘not found.问题

《如何解决idea的Module:‘:app‘platform‘android-32‘notfound.问题》:本文主要介绍如何解决idea的Module:‘:app‘platform‘andr... 目录idea的Module:‘:app‘pwww.chinasem.cnlatform‘android-32

Node.js 数据库 CRUD 项目示例详解(完美解决方案)

《Node.js数据库CRUD项目示例详解(完美解决方案)》:本文主要介绍Node.js数据库CRUD项目示例详解(完美解决方案),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考... 目录项目结构1. 初始化项目2. 配置数据库连接 (config/db.js)3. 创建模型 (models/

kali linux 无法登录root的问题及解决方法

《kalilinux无法登录root的问题及解决方法》:本文主要介绍kalilinux无法登录root的问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,... 目录kali linux 无法登录root1、问题描述1.1、本地登录root1.2、ssh远程登录root2、

SpringBoot应用中出现的Full GC问题的场景与解决

《SpringBoot应用中出现的FullGC问题的场景与解决》这篇文章主要为大家详细介绍了SpringBoot应用中出现的FullGC问题的场景与解决方法,文中的示例代码讲解详细,感兴趣的小伙伴可... 目录Full GC的原理与触发条件原理触发条件对Spring Boot应用的影响示例代码优化建议结论F

springboot项目中常用的工具类和api详解

《springboot项目中常用的工具类和api详解》在SpringBoot项目中,开发者通常会依赖一些工具类和API来简化开发、提高效率,以下是一些常用的工具类及其典型应用场景,涵盖Spring原生... 目录1. Spring Framework 自带工具类(1) StringUtils(2) Coll

MySQL 中查询 VARCHAR 类型 JSON 数据的问题记录

《MySQL中查询VARCHAR类型JSON数据的问题记录》在数据库设计中,有时我们会将JSON数据存储在VARCHAR或TEXT类型字段中,本文将详细介绍如何在MySQL中有效查询存储为V... 目录一、问题背景二、mysql jsON 函数2.1 常用 JSON 函数三、查询示例3.1 基本查询3.2

Pyserial设置缓冲区大小失败的问题解决

《Pyserial设置缓冲区大小失败的问题解决》本文主要介绍了Pyserial设置缓冲区大小失败的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录问题描述原因分析解决方案问题描述使用set_buffer_size()设置缓冲区大小后,buf

resultMap如何处理复杂映射问题

《resultMap如何处理复杂映射问题》:本文主要介绍resultMap如何处理复杂映射问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录resultMap复杂映射问题Ⅰ 多对一查询:学生——老师Ⅱ 一对多查询:老师——学生总结resultMap复杂映射问题

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

java实现延迟/超时/定时问题

《java实现延迟/超时/定时问题》:本文主要介绍java实现延迟/超时/定时问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java实现延迟/超时/定时java 每间隔5秒执行一次,一共执行5次然后结束scheduleAtFixedRate 和 schedu