Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $YECBGYFECGEAFWHA as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2

Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $BBWFDDBHHYHDXXAB as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2
C++另一个数组中较小值的排列_创想鸟

C++另一个数组中较小值的排列

c++另一个数组中较小值的排列

本教程中提供了两个数组 A 和 B。例如,我们需要输出 A 的任意排列,使得 A[ I ] > B[ I ] 的索引最大化,例如

Input: A = [12, 22, 41, 13],B = [1, 20, 10, 12]Output: 12, 22, 41, 13Input: A = [2, 5, 9, 7],B = [1, 12, 4, 54]Output: 2 7 5 9Multiple answers can be present in that case we are simply going to print any one of the answers.

在这个问题中,我们需要最大化 A[ i ] > B[ i ] 处的索引,因此我们将贪婪地解决这个问题。

寻找解决方案的方法

在这种方法中,我们现在首先对两个数组进行排序;我们贪婪地检查数组 B 的每个索引,使得 A[ i ] 比它更重要,然后将该元素放入向量中。

示例

#include using namespace std;int main(){    int A[] = { 2, 5, 9, 7 };    int B[] = { 1, 12, 4, 54 };    int n = sizeof(A) / sizeof(int); // size of our arrays    vector<pair > A_pair, B_pair;    /***********************We are linking element to its position***********/    for (int i = 0; i < n; i++)        A_pair.push_back({A[i], i});    for (int i = 0; i < n; i++)        B_pair.push_back({B[i], i});    /***********************************************************************/    /*****Sorting our pair vectors********************/    sort(A_pair.begin(), A_pair.end());    sort(B_pair.begin(), B_pair.end());    int i = 0, j = 0, ans[n];    memset(ans, -1, sizeof(ans)); // initializing all the elements with value -1    vector remaining; // this will store our elements which have lesser value than elemnt present in B.    while (i < n && j  B_pair[j].first) {            ans[B_pair[j].second] = A_pair[i].first;            i++;            j++;        }        else {            remaining.push_back(i);            i++;        }    }    j = 0;    for (int i = 0; i < n; ++i){        // now if any index of answer is unchanged so that means        //we need to fill that position with the remaining elements        if (ans[i] == -1){            ans[i] = A_pair[remaining[j]].first;            j++;        }    }    for (int i = 0; i < n; i++) // printing our answer        cout << ans[i] << " ";    return 0;}

输出

2 7 5 9

上述代码的解释

在这种方法中,我们首先将所有元素链接到它们的索引,以便在排序时仍然保留它们的旧索引。我们对两个向量对进行排序,现在我们在遍历两个数组时贪婪地搜索答案,如果我们得到 A_pair 的索引,它比 B_pair 具有更优异的值,因此我们将其存储在我们的数组中(并在B_pair 的位置)否则,因为我们已经对两个向量进行了排序,所以我们知道我们将无法使用 A_pair 的这个值,所以我们将该元素索引推入剩余的向量中,现在我们借助剩余的填充数组向量,然后打印答案。

立即学习“C++免费学习笔记(深入)”;

结论

在本教程中,我们解决了一个问题,从另一个数组中找到具有较小值的数组的排列。我们还学习了这个问题的C++程序以及我们解决的完整方法。我们可以用其他语言比如C、java、python等语言来编写同样的程序。我们希望本教程对您有所帮助。

以上就是C++另一个数组中较小值的排列的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1444250.html

赞 (0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
如何使用C语言将二进制转换为十六进制?
上一篇 2025年12月17日 21:15:42
在C和C++中,“void *”有什么区别?
下一篇 2025年12月17日 21:16:08

相关推荐

  • PHP/MySQL:高效合并订单商品并按日期分组显示

    本教程将指导如何在PHP/MySQL应用中,将同一日期的订单商品合并显示在同一行,以提高数据展示的清晰度。核心解决方案是利用MySQL的GROUP_CONCAT函数在数据库层面进行高效聚合,避免复杂的PHP逻辑处理,从而简化代码并优化性能。 订单数据展示的常见挑战 在开发在线购物平台时,通常需要向用…

    2026年9月21日
    100
  • 俄罗斯Яндекс账号登录入口 Yandex电脑版官方网站登录

    答案是https://www.yandex.com/。该网站提供搜索、地图、新闻、翻译等服务,界面简洁,支持个性化设置与账户同步,并拥有邮箱、云存储及丰富的应用生态。 1、立即进入“☞☞☞☞点击俄罗斯yandex搜索引擎入口☜☜☜☜”; 2、立即进入“☞☞☞☞点击快速获取Yandex免登录官网链接☜…

    2026年9月21日
    000
  • 谷歌浏览器官方主站入口 最新Chrome在线登录页面

    谷歌浏览器官方主站入口是https://www.google.com,该页面具备界面简洁、操作流畅、集成化服务入口和个性化推荐等特点,支持多设备访问且无广告干扰。 谷歌浏览器官方主站入口在哪里?这是不少网友都关注的,接下来由PHP小编为大家带来谷歌浏览器最新Chrome在线登录页面相关信息,感兴趣的…

    2026年9月21日
    000
  • 鸣潮2.7嘉贝莉娜隐藏成就该怎么达成-鸣潮2.7嘉贝莉娜隐藏成就达成条件一览

    鸣潮2.7嘉贝莉娜隐藏成就该怎么达成-鸣潮2.7嘉贝莉娜隐藏成就达成条件一览鸣潮2.7嘉贝莉娜隐藏成就该怎么达成-鸣潮2.7嘉贝莉娜隐藏成就达成条件一览鸣潮2.7嘉贝莉娜隐藏成就该怎么达成-鸣潮2.7嘉贝莉娜隐藏成就达成条件一览鸣潮2.7嘉贝莉娜隐藏成就该怎么达成-鸣潮2.7嘉贝莉娜隐藏成就达成条件一览

    在《鸣潮》2.7版本中,每位角色都设有专属的隐藏成就与趣味彩蛋。其中,嘉贝莉娜相关的隐藏成就“再会,清醒的猎人”需要玩家满足特定的时间与地点条件方可触发。以下是该成就的详细达成方法汇总。 鸣潮2.7嘉贝莉娜隐藏成就触发条件全解析——地点一: 1、传送到黎那汐塔区域的【烈日酒馆】。 2、进入酒馆后,朝…

    2026年9月21日 • 用户投稿
    000
  • 怎么全选VSCode多个光标_VSCode多光标操作与批量选择文本教程

    VSCode中高效创建多光标的方法包括:Alt+Click手动添加光标,适用于不规则位置;Ctrl+Alt+方向键垂直添加光标,适合连续多行操作;Ctrl+D逐个选择匹配项,精准控制选择范围;Ctrl+Shift+L一次性选择所有匹配项,实现全局批量修改。结合查找替换和列选择模式可进一步提升编辑效率…

    2026年9月21日
    100
  • CyberLinkMediaSuite如何制作AI视频?多功能工具快速剪辑的方法

    CyberLinkMediaSuite如何制作AI视频?多功能工具快速剪辑的方法CyberLinkMediaSuite如何制作AI视频?多功能工具快速剪辑的方法CyberLinkMediaSuite如何制作AI视频?多功能工具快速剪辑的方法CyberLinkMediaSuite如何制作AI视频?多功能工具快速剪辑的方法

    答案:CyberLink MediaSuite(核心为PowerDirector)通过AI艺术风格转换、智能对象选取、AI天空替换、音频降噪与运动追踪等功能,显著提升视频制作效率与创意表现。结合模板应用、快捷键操作、媒体库管理及代理编辑等实战技巧,可实现快速剪辑与专业输出,适用于Vlog创作、教育视…

    2026年9月21日 • 用户投稿
    300
  • 小红书从哪里看私信记录?私信记录如何清理?

    在小红书上与朋友或喜欢的博主互动时,私信是必不可少的沟通方式。不少新手用户常常困惑于如何查找过往的聊天内容。本文将为你详细说明查看私信记录的具体步骤,并分享几种实用的清理方法,帮助你轻松管理私信箱,让对话界面更清爽。 一、如何找到小红书的私信记录? 查看私信的操作非常直观,只需几个简单步骤即可完成。…

    2026年9月21日
    000
  • PHP 数组值比较与嵌套数组过滤教程

    本教程详细讲解如何在 PHP 中比较一个简单数组与一个复杂嵌套数组,并根据特定条件(如文件名匹配)过滤嵌套数组中的所有相关子数组。我们将通过识别非匹配项的索引,然后从所有子数组中移除这些项并重新索引,实现精确的数据筛选。 问题背景 在 php 开发中,我们经常会遇到需要处理结构复杂的数组数据。例如,…

    2026年9月21日
    200
  • Java集合框架在数据处理中的应用实例

    使用Set去重:通过LinkedHashSet去除标签重复并保持顺序;2. Map统计频次:利用HashMap统计单词出现次数;3. List结合Comparator排序:按年龄升序、姓名降序排列用户;4. 集合嵌套处理数据:用Map组织部门与员工列表。集合框架提升数据处理效率与代码可读性。 Jav…

    2026年9月21日
    100
  • MySQL性能模式监控资源_MySQL瓶颈定位精确工具

    MySQL性能模式监控资源_MySQL瓶颈定位精确工具MySQL性能模式监控资源_MySQL瓶颈定位精确工具MySQL性能模式监控资源_MySQL瓶颈定位精确工具MySQL性能模式监控资源_MySQL瓶颈定位精确工具

    mysql性能模式通过事件记录精准定位瓶颈,核心步骤包括:1.启用并配置performance schema,选择性开启消费者和仪器;2.监控等待事件、sql语句、阶段、i/o、内存及锁等关键指标;3.分析events_waits_summary_global_by_event_name等表识别资源…

    2026年9月21日 • 用户投稿
    000
  • REDMI有史以来最强手机!K90 Pro Max这次真的强到爆

    REDMI有史以来最强手机!K90 Pro Max这次真的强到爆REDMI有史以来最强手机!K90 Pro Max这次真的强到爆REDMI有史以来最强手机!K90 Pro Max这次真的强到爆REDMI有史以来最强手机!K90 Pro Max这次真的强到爆

    如果说redmi过去是“性价比之王”,那么这一次,它彻底进化成了“性能怪兽”。10月23日即将登场的redmi k90 pro max,不仅是品牌年度旗舰的压轴大戏,更是其历史上首款冠以“pro max”之名的巅峰之作。 这可以看作是REDMI向高端市场发起冲击的正式宣言。卢伟冰亲自放话:“给4K价…

    2026年9月21日 • 用户投稿
    300
  • vivo浏览器设置选项在哪里_vivo浏览器系统设置入口位置

    首先打开vivo浏览器,点击右上角三点图标进入设置菜单;也可通过首页滑动侧边栏或搜索框输入“设置”快速跳转,进而调整搜索引擎、隐私权限及清除缓存等配置。 如果您在使用vivo浏览器时需要调整浏览设置,例如更改默认搜索引擎、管理隐私权限或清除缓存数据,可以通过浏览器内置的系统设置入口进行操作。以下是进…

    2026年9月20日
    100
  • mac怎么合并多个PDF文件_Mac合并PDF文件方法

    使用macOS可便捷合并PDF:1. 用预览拖拽缩略图或插入文件;2. 通过访达快速操作批量合并;3. 借助在线工具如iLovePDF处理。 如果您需要将多个PDF文件整合为一个文档以便于分享或管理,macOS系统提供了多种便捷的合并方式。以下是一些有效的操作步骤: 本文运行环境:MacBook P…

    2026年9月20日
    000
  • order by排序在mysql中如何实现

    ORDER BY用于对查询结果排序,支持ASC升序和DESC降序,位于SELECT语句末尾,可按单列或多列排序;MySQL优先利用索引有序性避免排序,若无合适索引则采用filesort在内存或磁盘排序;优化器选择单路或双路排序以提升效率;性能关键包括为排序字段建立索引、避免大结果集无索引排序、减少S…

    2026年9月20日
    000
  • 在Java中如何实现多条件排序

    使用Comparator.thenComparing()可实现多条件排序,如先按年龄升序、再按分数降序、最后按姓名升序排列。 在Java中实现多条件排序,通常可以通过 Comparator 接口来完成。你可以根据多个字段依次比较,优先级从高到低排列。以下是几种常用且清晰的实现方式。 使用 Compa…

    2026年9月20日
    200
  • 企查查如何使用快捷查询栏_企查查查询栏的自定义配置教程

    首先启用快捷查询栏,再添加自定义模板如“高新技术企业_北京”,设置行业、地区等条件并保存,随后调整模板顺序以优化访问效率,最后可编辑或删除不再需要的查询配置。 如果您希望在企查查中快速查找企业信息,但每次手动输入查询条件较为繁琐,可以通过配置快捷查询栏来提升效率。通过自定义查询栏的显示字段和默认筛选…

    2026年9月20日
    000
  • 如何在Laravel中实现数据排序

    在laravel中实现数据排序的核心方法是使用eloquent查询构建器的orderby方法。1. 基础排序可通过orderby指定字段及方向,如按创建时间倒序排列;2. 可使用latest()和oldest()分别实现倒序和正序排列;3. 多字段排序通过链式调用多个orderby方法实现,如先按姓…

    2026年9月20日
    100
  • 蛙漫2(日版)(网页版)在线登录 蛙漫2(日版)入口通道

    蛙漫2(日版)在线登录入口为https://manwa2.com/,该平台汇集日漫、国漫等多类型高清漫画,涵盖校园、恋爱、冒险等题材,支持每日更新、智能推荐、夜间模式及书架同步等功能。 蛙漫2(日版)在线登录入口通道在哪里?这是不少网友都关注的,接下来由PHP小编为大家带来蛙漫2(日版)最新网页版访…

    2026年9月20日
    100
  • Steam商店重磅更新上线!心动游戏发售不错过

    steam平台每日都有大量新游戏上线,这让玩家难以全面关注所有值得关注的作品。为解决这一难题,valve正推出一项全新功能——“个性化推荐日历”,目前该功能已通过steam labs实验项目进入测试阶段。 据Valve介绍,这项日历功能将根据每位用户的兴趣偏好和历史游玩行为,智能筛选并推荐可能感兴趣…

    2026年9月13日
    000
  • Linux如何统计目录大小du命令实例

    Linux如何统计目录大小du命令实例Linux如何统计目录大小du命令实例Linux如何统计目录大小du命令实例Linux如何统计目录大小du命令实例

    使用du命令可高效查看Linux目录大小,如du -s显示总占用空间,du -sh以易读格式展示,du -h列出各子目录大小,–max-depth限制层级深度,结合sort -h可排序定位最大目录。 在Linux系统中,du(disk usage)命令用于查看文件和目录的磁盘使用情况。统…

    2026年9月13日 • 用户投稿
    100

发表回复

登录后才能评论
关注微信