入门力扣自学笔记262 C++ (题目编号:2418)

news/2024/11/24 2:59:45/

2418. 按身高排序

题目:

给你一个字符串数组 names ,和一个由 互不相同 的正整数组成的数组 heights 。两个数组的长度均为 n 。

对于每个下标 i,names[i] 和 heights[i] 表示第 i 个人的名字和身高。

请按身高 降序 顺序返回对应的名字数组 names 。


示例 1:

输入:names = ["Mary","John","Emma"], heights = [180,165,170]
输出:["Mary","Emma","John"]
解释:Mary 最高,接着是 Emma 和 John 。


示例 2:

输入:names = ["Alice","Bob","Bob"], heights = [155,185,150]
输出:["Bob","Alice","Bob"]
解释:第一个 Bob 最高,然后是 Alice 和第二个 Bob 。


提示:

n == names.length == heights.length
1 <= n <= 103
1 <= names[i].length <= 20
1 <= heights[i] <= 105
names[i] 由大小写英文字母组成
heights 中的所有值互不相同


来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/sort-the-people
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。


思路:

首先,我们定义一个int类型容器,用来存储所有人的索引下标。

其次,我们按照身高顺序对索引下标进行排列。排列完成后以索引为下标,将名字输入到一个容器中作为最终答案。

最后,我们返回最终答案即可。


代码:

class Solution {
public:vector<string> sortPeople(vector<string>& names, vector<int>& heights) {int n=heights.size();vector<int> index(n);iota(index.begin(),index.end(),0);sort(index.begin(),index.end(),[&](int a,int b){return heights[a]>heights[b];});vector<string> res(n);for(int i=0;i<n;i++){res[i]=names[index[i]];}return res;}
};


http://www.ppmy.cn/news/53575.html

相关文章

2023年某科技公司前端开发初级岗的面试笔试真题(含选择题答案、问答题解析、机试题源码)

📚关于该专栏: 该专栏的发布内容是前端面试中笔试部分真题、答卷类、机试等等的题目,题目类型包括逻辑题、算法题、选择题、问答题等等,除了内容的分享,还有解析和答案。真实来自某些互联网公司,坐标广东广州。 🔥🔥🔥 持 续 更 新 🔥🔥🔥 😉专栏博主: 黛…

【云原生】prometheus监控告警之实现alertmanager高可用实战

前言 🏠个人主页:我是沐风晓月 🧑个人简介:大家好,我是沐风晓月,阿里云社区博客专家😉😉 💕 座右铭: 先努力成长自己,再帮助更多的人 ,一起加油进步🍺🍺🍺 💕欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信😘文章目录 前言…

使用openssl生成https证书

首先去官网下载openssl工具&#xff1a;Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions (slproweb.com) 然后安装完成需要执行&#xff08;1&#xff09;openssl genrsa -des3 -out root.key 1024 &#xff08;2&#xff09;openssl req -new -key ro…

牛客网——有理算法

Rational Arithmetic (20)__牛客网 (nowcoder.com) 1、题目 对于两个有理数&#xff0c;您的任务是实现基本 算术&#xff0c;即计算它们的总和、差、乘积和商。 链接&#xff1a;Rational Arithmetic (20)__牛客网 来源&#xff1a;牛客网 输入描述: Each input file con…

Netty核心源码分析(五)核心组件EventLoop源码分析

文章目录 系列文章目录一、EventLoop源码分析1、NioEventLoop源码2、EventLoop的父接口SingleThreadEventExecutor&#xff08;1&#xff09;addTask方法&#xff08;2&#xff09;startThread方法 3、NioEventLoop的run方法&#xff08;核心&#xff01;&#xff09;&#xff…

第三章 使用 Maven:命令行环境

第一节 实验一&#xff1a;根据坐标创建 Maven 工程 Maven 核心概念&#xff1a;坐标 ①数学中的坐标 使用 x、y、z 三个**『向量』作为空间的坐标系&#xff0c;可以在『空间』中唯一的定位到一个『点』**。 ②Maven中的坐标 [1]向量说明 使用三个**『向量』在『Maven的仓…

JUnit 5 参数化测试

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FutGAReQ-1682390296590)(https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/76ce3a3756c54822ba10db2c9a0e94c9~noop.image?_iz58558&fromarticle.pc_detail&x-expires1682930831&x-s…

ZooKeeper分布式应用程序协调服务

目录 一.ZooKeeper基本介绍 1.ZooKeeper是什么&#xff1f; 2.ZooKeeper的工作机制 3.ZooKeeper的特点 4.ZooKeeper的数据结构 5.ZooKeeper的应用场景 5.1 统一命名服务 5.2 统一配置管理 5.3 统一集群管理 5.4 服务器动态上下线 5.5 软负载均衡 二.ZooKeeper的选举…