题目来源

  • 华为机试:统计射击比赛成绩

题目描述

题目解析

#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";}
}

华为机试:统计射击比赛成绩相关推荐

  1. 【算法题】统计射击比赛成绩

    统计射击比赛成绩 package collections;import java.io.BufferedReader; import java.io.IOException; import java. ...

  2. 【华为OD机试真题 Java】统计射击比赛成绩

    前言:本专栏将持续更新华为OD机试题目,并进行详细的分析与解答,包含完整的代码实现,希望可以帮助到正在努力的你.关于OD机试流程.面经.面试指导等,如有任何疑问,欢迎联系我,wechat:steven ...

  3. 【华为OD机试真题 Python】统计射击比赛成绩

    前言:本专栏将持续更新华为OD机试题目,并进行详细的分析与解答,包含完整的代码实现,希望可以帮助到正在努力的你.关于OD机试流程.面经.面试指导等,如有任何疑问,欢迎联系我,wechat:steven ...

  4. 【华为OD机试 2023 B卷 | 100分】 统计射击比赛成绩(C++ Java JavaScript )

    在线OJ 已购买本专栏用户,请私信博主开通账号,在线刷题!!! 运行出现 Runtime Error 0Aborted,请忽略 华为OD统一考试A卷+B卷 新题库说明 2023年5月份,华为官方已经将 ...

  5. 【华为机试真题Java】统计射击比赛成绩

    目录 题目描述 输入描述 输出描述 参考示例 参考代码 机试介绍 写在最后 题目描述 给定一个射击比赛成绩单,包含多个选手若干次射击的成绩分数,请对每个选手按其最高3个分数之和进行降序排名,输出降序排 ...

  6. 华为OD机试真题 Python 实现【统计射击比赛成绩】

    目录 题目 思路 考点 Code 题目 给定一个射击比赛成绩单,包含多个选手若干次射击的成绩分数,请对每个选手按其最高3个分数之和进行降序排名,输出降序排名后的选手ID序列.条件如下: 1.一个选手可 ...

  7. 华为机试真题 Java 实现【统计射击比赛成绩】

    目录 题目 思路 考点 Code 题目 给定一个射击比赛成绩单,包含多个选手若干次射击的成绩分数,请对每个选手按其最高3个分数之和进行降序排名,输出降序排名后的选手ID序列.条件如下: 1.一个选手可 ...

  8. 【华为机试真题 Python】统计射击比赛成绩

    目录 题目描述 输入描述 输出描述 参考示例 参考代码 机试介绍 写在最后

  9. 华为机试--统计字符

    描述: 输入一行字符,分别统计出包含英文字母.空格.数字和其它字符的个数. 数据范围:输入的字符串长度满足 1≤n≤1000 输入描述: 输入一行字符串,可以有空格 输出描述: 统计其中英文字符,空格 ...

  10. 华为机试(JAVA)真题Od【A卷+B卷】

    各语言题库: [Python+JS+Java合集][超值优惠]:Py/JS/Java合集 [Python]:Python真题题库 [JavaScript]:JavaScript真题题库 [Java]: ...

最新文章

  1. php获取数组中,相同键名的键值之和
  2. html5 去掉 li的样式,css li 去掉点的样式写法
  3. Intel VT学习笔记(四)—— VMCS(下)
  4. c++字符串输入_【pwn】什么是格式化字符串漏洞?
  5. 【Linux网络编程】TCP 和 UDP 数据报格式详解
  6. C++11多线程编程-两个进程轮流打印1~100
  7. C#中ref与out使用小结
  8. 如何使得窗口最大化?
  9. 信号与系统学习之第一章(系统的六大基本性质定义与判别:无记忆性、可逆性、因果性、稳定性、时不变性、线性)
  10. 永恒之蓝(ms17010)漏洞利用
  11. python dwg文件 读取_如何使用Python打开DWG文件扩展名?
  12. uushare.com(原uubox.net)的功能简介
  13. Node爬虫(二):使用cheerio爬取表情包
  14. 赛尔号无限宇宙服务器,赛尔号无限宇宙
  15. 【NOIP模拟题】【DP】【LIS】【中缀表达式】2016.11.15 第一题 小L的二叉树 题解
  16. 微信小程序HTTPS证书部署案例
  17. AttributeError: type object ‘Image‘ has no attribute ‘fromarray‘
  18. jspm律所应用管理系统毕业设计(附源码、运行环境)
  19. 三叉神经树 ( neuron )
  20. 计世网:IT人坚持不懈的十件蠢事

热门文章

  1. HDLC(High-Level Data Link Control)(对比以太网)
  2. 什么是SysWow64,什么是System32
  3. 加速ubuntu开机速度
  4. redis知识盘点【陆】_客户端Jedis
  5. NUC8冥王峡谷改装苹果网卡完美方案
  6. Oracle中打印99乘法表的13种方法
  7. golang php mysql性能_golang vs dlang vs nodejs vs php 性能对比较量
  8. 常用的Markdown使用命令
  9. java图片合成_Java图片处理(一)图片合成
  10. raspberry OS buster InRelease: The following signatures couldn‘t be verified