C++ 中根据给定条件恢复被打乱的队列2025 年 5 月 22 日 | 阅读 4 分钟 在本文中,我们将讨论如何在 C++ 中根据给定条件以及其算法和实现来恢复打乱的队列。 问题陈述考虑两个数组,A[] 和 B[],以及 N 个人在排队。个人姓名由数组 A[] 表示,站在其前面且比该个人高的人数由数组 B[] 表示。现在,队伍被重新排列。任务是打印队列的初始顺序,同时遵循上述属性。 算法步骤 1: 创建一个名为 "pairs[]" 的数组,用于存储个人姓名及其分配号码的对。 步骤 2: 遍历 persons[] 和 nums[] 数组,将它们的值组合到 pairs 数组中。 步骤 3: 为了对 pairs[] 数组进行排序,使用 sort() 函数。 步骤 4: 此外,在此步骤中,我们定义“res”列表并开始遍历 pairs[] 数组。 步骤 5: 如果 p - pairs[p].first 小于 0,则打印 -1,因为无法获得原始队列。 步骤 6: 如果不是,则更新 res[p] 中的 temp 字段。 步骤 7: 当前,我们必须修改 res[q] 集合中个人的位置。输入 'res' 数组并开始探索它。 步骤 8: 使用嵌套循环从索引 0 到索引 q 遍历 res 数组。 步骤 9: 如果 res[q] 大于或等于 res[p],则将 res[q] 增加 1。 步骤 10: 打印出每个人的位置。 输入: N = 4, A[] = {'a', 'b', 'c', 'd'}, B[] = {0, 2, 0, 0} 输出 a 1 c 3 d 4 b 2 观察输出队列以及生成它们的高度,很明显:
示例 1让我们举一个例子来说明如何在 C++ 中根据给定条件恢复打乱的队列。 输出 J 1 h 3 n 4 o 2 示例 2让我们举一个例子来说明如何在 C++ 中根据给定条件恢复打乱的队列。 输出 The original queue is: Harsha 1 Ram 2 sham 4 vardhan 3 下一主题腐烂橘子问题 (C++) |
简介:C++ 中的 'exit()' 函数用于结束程序执行。它允许您在程序运行的任何时刻停止程序,无论它在代码中的哪个位置被调用。使用 'exit()' 函数的主要目标是结束……
阅读9分钟
一个素数被称为毕达哥拉斯素数,如果它可以写成 4n+1 的形式,其中 n 是非负整数。例如 5、13 和 29 这样的 4n+1 素数在数论研究中很有用,因为它们源自毕达哥拉斯三元组。检查一个……
5 分钟阅读
粒子群优化 (PSO) 是一种受鸟类或鱼类等自然生物集体行为启发的优化技术。它由 James Kennedy 和 Russell Eberhart 于 1995 年引入。在 PSO 中,一组候选解(称为粒子)在搜索空间中移动以...
阅读 16 分钟
从计算几何学这个庞大的领域中,出现了许多“看似简单”的问题,它们通过复杂的解决方案得到解决,并展示了数学推理的美丽和复杂性。确切地说,很难找到两个重叠矩形所覆盖的空间……
阅读 19 分钟
在本文中,我们将讨论如何在 C++ 中找到引爆所有气球所需的最少箭数。问题陈述:给定一个大小为 N 的数组,其中 points[i] 表示覆盖 X 坐标中 points[i][0] 和 points[i][1] 区域的气球....
阅读 4 分钟
在本文中,我们将讨论 C++ 中的皇冠图案打印程序。在讨论 C++ 皇冠图案打印程序之前,我们必须了解 C++ 皇冠图案打印示例的步骤。什么是皇冠图案?一个常见的图案...
阅读 6 分钟
引言:“重新排列远程条形码”是计算机科学领域,尤其是在算法设计和优化中经常遇到的一个计算问题。挑战在于重新组织条形码序列(由整数表示),使得没有两个相邻的条形码相同。这个问题类似于寻找...
阅读 15 分钟
在本文中,我们将讨论 C++ 中的访问者设计模式,并提供几个示例及其优点。访问者设计模式:行为设计模式包括访问者模式,它强调对象之间如何交互。本质上,该模式用于将算法与对象结构分离……
5 分钟阅读
在本文中,我们将讨论 C++ 中 std::thread 和 OpenMP 之间的区别。在深入探讨区别之前,让我们详细了解每个术语及其功能。什么是 C++ 中的 std::thread? std::thread 是程序的最小单元。当您运行叙事设计时...
5 分钟阅读
在本文中,我们将讨论如何在 C++ 中查找前 N 个 Iccanobif 数。在实现之前,我们必须了解 C++ 中的 Iccanobif 数。什么是 C++ 中的 Iccanobif 数?Iccanobif 数与斐波那契数相似。与斐波那契数一样,iccanobif 数……
5 分钟阅读
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India