找到 34423 篇文章 关于编程

在 C++ 中查找最大的 N,使得前 N 个自然数的平方和不超过 X

Arnab Chakraborty
更新于 2020-07-25 08:45:08

345 次浏览

概念对于给定的整数 X,我们的任务是确定最大值 N,使得前 N 个自然数的平方和不超过 X。输入X = 7输出22 是 N 的最大可能值,因为对于 N = 3,级数的和将超过 X,即 1^2 + 2^2 + 3^2 = 1 + 4 + 9 = 14输入X = 27输出33 是 N 的最大可能值,因为对于 N = 4,级数的和将超过 X,即 1^2 + 2^2 + 3^2 + 4^2 = 1 + 4 + ... 阅读更多

在 C++ 中查找最大长度的蛇形序列

Arnab Chakraborty
更新于 2020-07-25 08:42:11

215 次浏览

概念对于给定的数字网格,确定最大长度的蛇形序列并显示它。据观察,如果存在多个具有最大长度的蛇形序列,则显示其中任何一个。实际上,蛇形序列由网格中相邻的数字组成,因此对于每个数字,其右侧或下方的数字要么是其值的 +1,要么是 -1。例如,如果我们在网格中的位置 (a, b),我们可以向右移动,即 (a, b+1),如果该数字为 ± 1,或者向下移动,即 ... 阅读更多

在 C++ 中查找任何城市和车站之间的最大距离

Arnab Chakraborty
更新于 2020-07-25 08:36:46

371 次浏览

概念对于给定的城市数量 N(从 0 到 N-1 编号)和位于其中的城市,我们的任务是确定任何城市与其最近的车站之间的最大距离。需要注意的是,带车站的城市可以按任意顺序给出。输入numOfCities = 6,stations = [2, 4]输出2输入numOfCities = 6,stations = [4]输出4下图表示第一个示例,包含 6 个城市,并且带车站的城市以绿色突出显示。因此,在这种情况下,距离其最近车站最远的城市是 0,距离为 2。因此,最大 ... 阅读更多

在 C++ 中查找最近的左侧和右侧较小元素之间的最大差值

Arnab Chakraborty
更新于 2020-07-24 12:04:51

257 次浏览

概念对于给定的整数数组,我们的任务是确定数组中每个元素的最近左侧和右侧较小元素之间的最大绝对差值。需要注意的是,如果任何元素的右侧或左侧没有较小元素,则我们将 0 作为较小元素。例如,对于最左侧的元素,左侧的最近较小元素设置为 0。同样,对于最右侧的元素,右侧的较小元素设置为 0。输入arr[] = {3, ... 阅读更多

在 C++ 中从重复数组中查找丢失的元素

Arnab Chakraborty
更新于 2020-07-24 12:02:27

101 次浏览

概念对于给定的两个数组,它们彼此重复,除了一个元素,这意味着一个数组中的一个元素丢失了,我们的任务是确定该丢失的元素。输入arr1[] = {2, 5, 6, 8, 10} arr2[] = {5, 6, 8, 10}输出22 从第二个数组中丢失。输入arr1[] = {3, 4, 5, 6} arr2[] = {3, 4, 5, 6, 7}输出77 从第一个数组中丢失。方法在这里,我们应用一个简单的解决方案,其中我们遍历数组并逐个验证元素,并在检测到不匹配时标记丢失的元素。但是,此解决方案的缺点是 ... 阅读更多

在 C++ 中查找通过移除或洗牌字符串中的字符形成的最长回文

Arnab Chakraborty
更新于 2020-07-24 11:56:17

136 次浏览

概念对于给定的字符串,确定可以通过移除或洗牌字符串中的字符形成的最长回文。最后,如果观察到存在多个最长长度的回文字符串,则只返回一个回文。输入pqr输出p 或 q 或 r输入ppqqrr输出pqrrqp 或 qprrpq 或 rqppqr 或任何其他长度为 6 的回文字符串。输入pqp输出pqp方法在这里,我们可以将任何回文字符串划分为三个部分——beg、mid 和 end。对于奇数长度的回文字符串,例如 2n + 1,这里“beg”由字符串的前 n 个字符组成,“mid”仅由 1 个字符组成,即 (n ... 阅读更多

在 C++ 中查找最长的双峰序列,使得递增部分和递减部分来自两个不同的数组

Arnab Chakraborty
更新于 2020-07-24 11:58:21

138 次浏览

概念对于给定的两个数组,我们的任务是确定最长的可能双峰序列,以便递增部分必须来自第一个数组并且应该是第一个数组的子序列。同样,递减部分必须来自第二个数组并且应该是它的子序列。输入arr1[] = {2, 6, 3, 5, 4, 6},arr2[] = {9, 7, 5, 8, 4, 3}输出2, 3, 4, 6, 9, 7, 5, 4, 3输入arr1[] = {3, 1, 2, 4, 5},arr2[] = {6, 4, 3, 2}输出1, 2, 4, 5, 6, 4, 3, 2方法因此,概念是实现最长递增 ... 阅读更多

在 C++ 中查找 BST 中第 k 小的元素(BST 中的顺序统计)

Arnab Chakraborty
更新于 2020-08-25 12:23:13

487 次浏览

假设我们有一个二叉搜索树和一个值 K 作为输入,我们需要在树中找到第 K 小的元素。因此,如果输入类似于k = 3,则输出将为 15。为了解决这个问题,我们将遵循以下步骤:定义一个函数 find_kth_smallest(),它将接收根、计数、k,如果根为 NULL,则:返回 NULLleft = find_kth_smallest(根的左子树, 计数, k)如果 left 不为 NULL,则:返回 left(将计数加 1)如果计数等于 k,则:返回 root返回 find_kth_smallest(根的右子树, 计数, k)从主方法中执行以下操作:count := 0res = find_kth_smallest(root, ... 阅读更多

在 C++ 中查找解密字符串的第 k 个字符 - 集 - 2

Arnab Chakraborty
更新于 2020-07-24 11:45:39

134 次浏览

概念对于给定的编码字符串,其中子字符串的重复表示为子字符串后跟子字符串的计数。例如,如果加密字符串为“pq2rs2”且 k=5,则输出将为“r”,因为解密字符串为“pqpqrsrs”,并且第 5 个字符为“r”。需要注意的是,加密子字符串的频率可以超过一位数字。例如,在“pq12r3”中,pq 重复 12 次。这里,子字符串频率中不存在前导 0。输入"p2q2r3",k = 6输出r解密字符串为 "ppqqrrr"输入"pq4r2ts3",k = 11输出t解密字符串为 "pqpqpqpqrrtststs"方法在这里,分步算法如下:确定当前 ... 阅读更多

在 C++ 中查找涉及加权作业调度的作业

Arnab Chakraborty
更新于 2020-08-25 12:25:51

177 次浏览

假设我们有一个包含 N 个工作的列表,每个工作有三个参数:1. 开始时间 2. 结束时间 3. 利润。我们需要找到一个与最大利润相关的作业子集,使得子集中没有两个作业重叠。所以,如果输入类似于 N = 4 且 J = {{2, 3, 55},{4, 6, 25},{7, 20, 150},{3, 150, 250}},则输出将为 [(2, 3, 55),(3, 150, 250)],最佳利润为 305。为了解决这个问题,我们将遵循以下步骤:定义一个函数 find_no_conflict(),它将接收一个数组 jobs、索引、left := 0、right := index - 1,当 left

广告

© . All rights reserved.