164 次查看
在这个问题中,我们给定一个数组 arr[]。我们的任务是创建一个程序,在 C++ 中找到最大和,使得数组中没有两个元素相邻。问题描述我们需要从数组中找到序列的最大和,使得序列中没有两个数字在数组中相邻。让我们举个例子来理解这个问题,输入arr[] = {5, 1, 3, 7, 9, 2, 5}输出22解释从索引 0 开始,取交替元素的和:5 + 3 + 9 + 5 = 22 从索引 1 开始,取交替元素的和 ... 阅读更多
190 次查看
201 次查看
概念对于给定的正不同元素的排序双向链表,我们的任务是在双向链表中确定乘积等于给定值 x 的配对,而无需占用任何额外空间。输入List = 1 2 4 5 6 8 9 x = 8输出(1, 8), (2, 4)输入List1 = 1 2 3 4 5 6 7 x = 6输出(1, 4), (2, 3)方法对于这个问题的简单方法,我们遍历链表实现两个嵌套循环并确定所有配对并验证 ... 阅读更多
121 次查看
假设我们有一个二进制矩阵;我们必须找到给定矩阵中具有最大位差的行对。因此,如果输入类似于矩阵,则输出将为 [2, 3],因为行 2 和行 3 之间的位差为 4,这是最大的。要解决此问题,我们将遵循以下步骤 -定义 Trie 结构,具有值和两个子节点。定义一个函数 get_max_bit_diff(),它将获取 Trie 的根、矩阵、n、行索引、temp := 根、count := 0 对于初始化 i := 0,当 i < n 时,更新(增加 i ... 阅读更多
110 次查看
假设我们有一个单链表和一个值 x;我们必须找到一个和等于 x 的配对。我们必须记住,我们不能使用任何额外空间,并且预期的时间复杂度将为 O(n)。因此,如果输入类似于 4→7→8→9→10→11→12,x = 19,则输出将为 [(7, 12), (8, 11), (9, 10)]要解决此问题,我们将遵循以下步骤 -定义一个函数 convert_to_xor(),它将获取 start、prev := NULL 当 start 为 NULL 时,执行 -next_list_node := start 的下一个 start 的下一个 := next_list_node 的地址和 ... 阅读更多
287 次查看
概念对于给定的数组 array[],其中包含另一个数组中每对元素可能的 GCD,我们的任务是确定用于计算 GCD 数组的原始数字。输入array[] = {6, 1, 1, 13}输出13 6 gcd(13, 13) = 13 gcd(13, 6) = 1 gcd(6, 13) = 1 gcd(6, 6) = 6输入arr[] = {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 6, 6, 6, 8, 11, 13, 3, 3}输出13 11 8 6 6方法首先,按降序对数组进行排序。最大元素始终是 ... 阅读更多
258 次查看
概念对于给定的具有 m 个节点的树以及与每个节点关联的数字,我们可以断开任何树边,这将导致形成 2 棵新树。在这里,我们必须以这种方式计算边的数量,以便在断开该边后构建的两棵树中存在的节点的按位或相等。需要注意的是,每个节点的值≤ 10^6。输入values[]={1, 3, 1, 3} 1 / | \ 2 3 4输出2在这里,可以在 1 和 2 之间的边断开,按位 ... 阅读更多
196 次查看
概念假设 bn 是一个数字序列,由递归关系 b1=1 和 bn+1/bn=2n 表示。我们的任务是确定给定 n 的 log2(bn) 的值。输入6输出15解释log2(bn) = (n * (n - 1)) / 2 = (6*(6-1))/2 = 15输入200输出19900方法bn+1/bn = 2nbn/bn-1 = 2n-1...b2/b1 = 21,我们将以上所有内容相乘以获得(bn+1/bn).(bn/n-1)……(b2/b1) = 2n + (n-1)+……….+1所以,bn+1/b1 = 2n(n+1)/2因为我们知道,1 + 2 + 3 + ………. + (n-1) + n = n(n+1)/2所以,bn+1 = 2n(n+1)/2 . b1;假设初始值 b1 = 1所以,bn+1 = 2sup>n(n+1)/2现在用 (n+1) 代替 n,我们得到, ... 阅读更多
181 次查看
概念对于给定的长度为 m 的字符串,仅包含小写字母,我们的任务是确定字符串的第 n 个字典序排列。输入str[] = "pqr", n = 3输出Result = "qpr"解释所有可能的排列按排序顺序 - pqr, prq, qpr, qrp, rpq, rqp输入str[] = "xyx", n = 2输出Result = "xyx"解释所有可能的排列按排序顺序 - xxy, xyx, yxx方法在这里,我们使用一些数学概念来解决这个问题。该概念基于以下事实。在这里,由 N 个字符(全部不同)生成的字符串的排列总数为 N!现在,由 N ... 阅读更多
207 次查看
概念对于给定的两个整数 N 和 K,我们的任务是确定 N 个不同的整数,其按位或等于 K。已经发现,如果不存在任何可能的答案,则打印 -1。输入N = 4, K = 6输出6 0 1 2输入N = 11, K = 6输出-1不可能找到任何解决方案。方法我们知道,如果数字序列的按位或为 K,则 K 中为 0 的所有位索引在所有数字中也必须为零。因此,我们只有那些位置 ... 阅读更多