找到 34423 篇文章,关于编程

C++ 中的全局和局部逆序

Arnab Chakraborty
更新于 2020年5月4日 14:08:15

296 次浏览

假设我们有一些 [0, 1, ..., N - 1] 的排列 A,其中 N 是 A 的长度。现在(全局)逆序的个数是 i < j 且 0 < A[j] 的个数。局部逆序的个数是 i 且 0 < A[i+1] 的个数。我们必须返回 true 当且仅当全局逆序的个数等于局部逆序的个数。因此,如果输入类似于 [1, 0, 2],则返回 true,因为只有一个局部逆序和一个全局逆序。要解决此问题,我们将... 阅读更多

C++ 中到达指定数字

Arnab Chakraborty
更新于 2020年5月4日 13:50:17

176 次浏览

假设你站在无限数轴上的位置 0。现在目标位置在 target。在每次移动中,你可以向左或向右移动。在第 n 次移动(从 1 开始)中,你移动 n 步。我们必须找到到达目的地的最少步数。因此,如果输入类似于 target = 3,则我们需要 2 步。从 0 到 1,从 1 到 3。要解决此问题,我们将遵循以下步骤 -target := |target|,cnt := 0while target > 0,减少... 阅读更多

C++ 中的单调递增数字

Arnab Chakraborty
更新于 2020年5月4日 13:47:09

414 次浏览

假设我们有一个非负整数 N,我们必须找到小于或等于 N 且具有单调递增数字的最大数字。我们知道,当且仅当每对相邻数字 x 和 y 满足 x = s[i – 1]增加 i by 1if i < nwhile i > 0 and s[i – 1] > s[i],则减少 i by 1减少 s[i] by 1for j in range i + 1 to ns[j] := ‘9’return s as number让我们看看下面的实现,以便更好地理解 -示例 现场演示#include ... 阅读更多

C++ 中棋盘上的骑士概率

Arnab Chakraborty
更新于 2020年5月4日 13:44:19

342 次浏览

假设我们有一个 NxN 棋盘,一个骑士从第 r 行和第 c 列开始,尝试正好走 K 步。这里行和列都是从 0 开始索引的,因此左上角的方格是 (0, 0),右下角的方格是 (N-1, N-1)。骑士可以从一个方格移动到 8 个不同的方格,这可以在此图中显示 -每次骑士移动时,它都会随机选择 8 种可能的移动方式之一。骑士继续移动,直到它正好走了 K 步或移出了棋盘。我们必须找到概率... 阅读更多

C++ 中的灯泡开关 II

Arnab Chakraborty
更新于 2020年5月4日 13:40:34

230 次浏览

假设有一个房间,里面有 n 个最初都打开的灯,以及墙上 4 个按钮。在对按钮执行恰好 m 个未知操作后,我们需要返回 n 个灯的不同状态种类。因此,考虑 n 个灯标记为数字 [1, 2, 3 ..., n],这 4 个按钮的功能如下 -翻转所有灯。翻转偶数编号的灯。翻转奇数编号的灯。翻转 (3k + 1) 编号的灯,k = 0, 1, 2, ...现在如果 n = 3 且 m = 1,则将... 阅读更多

C++ 中的美丽排列 II

Arnab Chakraborty
更新于 2020年5月4日 13:38:12

132 次浏览

假设我们有两个整数 n 和 k,我们需要构造一个列表,其中包含从 1 到 n 的 n 个不同的正整数,并服从以下规则 -考虑列表为 [a1, a2, a3, ... , an],则列表 [|a1 - a2|, |a2 - a3|, |a3 - a4|, ... , |an-1 - an|] 恰好有 k 个唯一的整数。因此,如果有多个答案,则显示其中任何一个。如果输入类似于 n = 3 和 k = 2,则结果将为 [1, 3, 2]。[1, 3, 2] 有三个不同的正整数... 阅读更多

C++ 中将数组拆分为连续子序列

Arnab Chakraborty
更新于 2020年5月4日 13:34:44

403 次浏览

假设我们有一个按升序排序的数组 nums。我们必须返回 true 当且仅当我们可以将其拆分为 1 个或多个子序列,使得每个子序列都由连续的整数组成,并且其长度至少为 3。因此,如果输入类似于 [1, 2, 3, 3, 4, 4, 5, 5],则输出将为 True,因为我们有两个连续的序列。它们是 [1, 2, 3, 4, 5] 和 [3, 4, 5]。要解决此问题,我们将遵循以下步骤 -创建一个映射 m 并将 nums 的频率存储到 m 中,... 阅读更多

C++ 中打印二叉树

Arnab Chakraborty
更新于 2020年5月4日 13:31:26

5K+ 次浏览

假设我们必须根据以下规则在 m*n 的二维字符串数组中显示一棵二叉树 -行数 m 应该与给定二叉树的高度相同。列数 n 应该始终是奇数。根节点的值应该放在第一行的正中间。根节点所在的列和行将剩余空间分成两部分。它们是左下部分和右下部分。我们应该在左下部分打印左子树,并在... 阅读更多

C++ 中查找重复的子树

Arnab Chakraborty
更新于 2020年5月4日 13:25:29

98 次浏览

假设我们有一棵二叉树。我们必须找到所有重复的子树。因此,对于每种重复的子树,我们必须返回其中任何一个的根节点。因此,假设我们有一棵这样的树 -重复的子树是 -要解决此问题,我们将遵循以下步骤 -创建一个数组 ret,创建一个映射 m定义一个递归方法 solve()。这将以节点作为输入。这工作原理如下 -如果节点为空,则返回 -1x := 节点值作为字符串,然后与其连接 “#”。left := solve(节点的左子树),right := solve(节点的右子树)x := ... 阅读更多

C++ 中的 2 键键盘

Arnab Chakraborty
更新于 2020年5月4日 13:17:10

169 次浏览

假设在文本编辑器中只有一个字符 'A'。我们可以对这个字母执行两个操作,每个步骤一个 -复制所有 - 我们可以复制记事本上存在的所有字符粘贴 - 我们可以粘贴上次复制的字符。现在假设我们有一个数字 n。我们必须通过执行允许的最小步骤数在记事本上获得恰好 n 个 'A'。我们必须找到获得 n 个 'A' 的最小步数的结果。因此,如果给定的 n 为 3,则答案为 3,因此最初... 阅读更多

广告

© . All rights reserved.