华为机试:统计射击比赛成绩
题目来源
- 华为机试:统计射击比赛成绩
题目描述
题目解析
#include <sstream>
#include <algorithm>
#include <map>
#include <set>
#include <queue>
using namespace std;struct Info{int id;int score;Info() : id(0), score(0){}Info(int id, int score) : id(id), score(score){}
};std::vector<int> split(std::string str, char ch){std::vector<int> ans;str += ch;int j = 0;for (int i = 0; i < str.size(); ++i) {if(str[i] == ch){ans.push_back(stoi(str.substr(j, i - j)));j = i + 1;}}return ans;
}int main() {int N;std::string str1, str2;
// std::cin >> N;
// std::cin >> str1;
// std::cin >> str2;std::vector<int> ids = split("3,3,7,4,4,4,4,7,7,3,5,5,5", ',');std::vector<int> scores = split("53,80,68,24,39,76,66,16,100,55,53,80,55", ',');std::map<int, std::priority_queue<int>> map;for (int i = 0; i < N; ++i) {map[ids[i]].push(scores[i]);}int score;std::vector<Info> ans;for(auto &it : map){if(it.second.size() < 3){continue;}int id = it.first;int scoreSum = 0;for (int i = 0; i < 3; ++i) {scoreSum += it.second.top(); it.second.pop();}ans.emplace_back(id, scoreSum);}std::sort(ans.begin(), ans.end(), [](Info &a, Info &b){return a.score > b.score ? true : (a.score == b.score ? a.id > b.id : false) ;});for (auto & an : ans) {std::cout << an.id <<"\t";}
}
华为机试:统计射击比赛成绩相关推荐
- 【算法题】统计射击比赛成绩
统计射击比赛成绩 package collections;import java.io.BufferedReader; import java.io.IOException; import java. ...
- 【华为OD机试真题 Java】统计射击比赛成绩
前言:本专栏将持续更新华为OD机试题目,并进行详细的分析与解答,包含完整的代码实现,希望可以帮助到正在努力的你.关于OD机试流程.面经.面试指导等,如有任何疑问,欢迎联系我,wechat:steven ...
- 【华为OD机试真题 Python】统计射击比赛成绩
前言:本专栏将持续更新华为OD机试题目,并进行详细的分析与解答,包含完整的代码实现,希望可以帮助到正在努力的你.关于OD机试流程.面经.面试指导等,如有任何疑问,欢迎联系我,wechat:steven ...
- 【华为OD机试 2023 B卷 | 100分】 统计射击比赛成绩(C++ Java JavaScript )
在线OJ 已购买本专栏用户,请私信博主开通账号,在线刷题!!! 运行出现 Runtime Error 0Aborted,请忽略 华为OD统一考试A卷+B卷 新题库说明 2023年5月份,华为官方已经将 ...
- 【华为机试真题Java】统计射击比赛成绩
目录 题目描述 输入描述 输出描述 参考示例 参考代码 机试介绍 写在最后 题目描述 给定一个射击比赛成绩单,包含多个选手若干次射击的成绩分数,请对每个选手按其最高3个分数之和进行降序排名,输出降序排 ...
- 华为OD机试真题 Python 实现【统计射击比赛成绩】
目录 题目 思路 考点 Code 题目 给定一个射击比赛成绩单,包含多个选手若干次射击的成绩分数,请对每个选手按其最高3个分数之和进行降序排名,输出降序排名后的选手ID序列.条件如下: 1.一个选手可 ...
- 华为机试真题 Java 实现【统计射击比赛成绩】
目录 题目 思路 考点 Code 题目 给定一个射击比赛成绩单,包含多个选手若干次射击的成绩分数,请对每个选手按其最高3个分数之和进行降序排名,输出降序排名后的选手ID序列.条件如下: 1.一个选手可 ...
- 【华为机试真题 Python】统计射击比赛成绩
目录 题目描述 输入描述 输出描述 参考示例 参考代码 机试介绍 写在最后
- 华为机试--统计字符
描述: 输入一行字符,分别统计出包含英文字母.空格.数字和其它字符的个数. 数据范围:输入的字符串长度满足 1≤n≤1000 输入描述: 输入一行字符串,可以有空格 输出描述: 统计其中英文字符,空格 ...
- 华为机试(JAVA)真题Od【A卷+B卷】
各语言题库: [Python+JS+Java合集][超值优惠]:Py/JS/Java合集 [Python]:Python真题题库 [JavaScript]:JavaScript真题题库 [Java]: ...
最新文章
- html无序列表空心圆_列表样式的使用CSS入门基础(018)
- 搜索进程内存地址_Linux编程 6 (查看进程 ps 及输出风格)
- input 强大的 input 标签
- Eclipse轻松玩转SmartFramework
- python生成二维码、动态二维码 和 而二维码解析
- laravel后台扩展包
- 【转】 嵌入式C语言编程中Inline函数的应用
- 为什么我们会看到 SAP Spartacus 服务器端渲染 `rendering in process` 的日志
- python父亲节礼物_父亲节程序员硬核示爱:你能看懂几条
- MFC中属性表单和向导对话框的使用
- 伪元素选择器使用场景-字体图标(CSS3)
- Pytorch学习笔记(7)——模型放GPU上经常报CUDA错该怎么办
- 网课题库收录API接口以及免费网课查询API接口
- Bean with name ‘‘ has been injected into other beans [] in its raw version as part of a circular ref
- 四款软件,提高团队工作效率
- 笔记本计算机无线开关在哪里,笔记本的WIFI开关在哪里 笔记本WIFI打开方法
- 当前对计算机专业人才的要求,关于计算机专业人才需求的分析
- imx8mq-evk快速启动-方案讨论,准备工作
- 【图片新闻】五角大楼的国防创新部DIU正在规划建设一个未来机器人空间站
- 开发微领地小蜜系统APP平台
热门文章
- [BZOJ3993] [SDOI2015]星际战争(最大流+二分)
- linux博通bcm4313无线网卡,在Deepin 15.7系统中解决BCM4313无线网卡网速慢的问题
- 如何成为一个优秀的测试工程师
- 浏览器ocx控件安装 IE浏览器可用
- 读后感—肿瘤基因检测行业会好吗
- 分布式架构中的八大谬误
- c语言求数组中绝对值最小值,整数数组中两两之差绝对值最小的值
- Google Play要求app从2019年8月1日起支持64位CPU
- 数据库连接串的问题。(如果是集群数据库的话)
- HTML5系列(2)history