找到 34423 篇文章 关于编程

使用C++中两只手指输入单词的最小距离

Arnab Chakraborty
更新于 2020年6月8日 11:25:38

197 次浏览

假设我们有如下键盘布局:ABCDEFGHIJKLMNOPQRSTUVWXYZ其中每个大写英文字母都位于某个坐标上,例如,字母 A 位于 (0, 0),字母 B 位于 (0, 1),字母 P 位于 (2, 3),字母 Z 位于 (4, 1)。现在,如果我们有一个单词,我们必须找到使用两只手指输入该字符串的最小总距离。两个位置 (x1, y1) 和 (x2, y2) 之间的距离是 |x1 - x2| + |y1 - y2|。我们可以从任意... 阅读更多

C++中的不同回声子串

Arnab Chakraborty
更新于 2020年6月8日 11:21:01

106 次浏览

假设我们有一个字符串 S;我们必须找到 S 的不同非空子串的数量,这些子串可以写成某个字符串与其自身的连接。因此,如果输入类似于“elloelloello”,则输出将为 5,因为有一些子串如“ello”、“lloe”、“loel”、“oell”。为了解决这个问题,我们将遵循以下步骤:prime := 31 m := 1^9 + 7 定义一个函数 fastPow(),它将取 base,power,res := 1 while power > 0,执行:−如果 power & 1 非零,则:−res := res * baseres := res mod mbase := base * ... 阅读更多

C++中的文字算术难题

Arnab Chakraborty
更新于 2020年6月8日 11:17:12

403 次浏览

假设我们有一个等式,表达式由左边的单词和右边的结果表示。我们必须检查在以下规则下等式是否可解:每个字符解码为一个数字 (0 到 9)。每对不同的字符必须映射到不同的数字。每个 words[i] 和 result 解码为一个没有前导零的数字。左边数字的和将等于右边的数字。我们将检查等式是否可解。因此,如果输入类似于 words = ["SEND", "MORE"],result = ... 阅读更多

C++中具有最大分数的路径数

Arnab Chakraborty
更新于 2020年6月8日 11:13:26

143 次浏览

假设我们有一个字符的方格棋盘。我们可以从用字符“S”标记的右下角方格开始在棋盘上移动。现在我们需要到达用字符“E”标记的左上角方格。其他方格用 1 到 9 的数字字符或障碍物“X”标记。一步之内,我们只能向上、左或左上移动,前提是没有障碍物。我们必须找到两个数字的列表:第一个数字是我们能收集到的数字字符的最大和,第二个... 阅读更多

C++中您可以从盒子中获得的最大糖果数

Arnab Chakraborty
更新于 2020年6月8日 11:09:37

311 次浏览

假设我们有 n 个盒子,这里每个盒子都以 [status, candies, keys, containedBoxes] 的格式给出,有一些约束:−status[i]:当 box[i] 打开时为 1,当 box[i] 关闭时为 0。−candies[i]:是 box[i] 中的糖果数量。−keys[i]:是一个数组,包含我们可以用 box[i] 中的钥匙打开的盒子的索引。−containedBoxes[i]:一个数组,包含在 box[i] 中找到的盒子的索引。我们将从 initialBoxes 数组中给出的某些盒子开始。我们可以取任何打开的盒子中的所有糖果,并且可以使用其中的钥匙来打开... 阅读更多

C++中具有障碍物消除的网格中的最短路径

Arnab Chakraborty
更新于 2020年6月8日 11:07:14

509 次浏览

假设我们有一个 m x n 网格,这里每个单元格都是 0 或 1。0 单元格为空,1 单元格被阻塞。一步之内,我们可以从一个空单元格移动到另一个空单元格的上方、下方、左侧或右侧。我们必须找到从左上角单元格 (0, 0) 到右下角单元格 (m-1, n-1) 的最小步数,前提是我们最多可以消除 k 个障碍物。如果没有这样的方法,则返回 -1。因此,如果输入类似于 000110000011000 且 k 为 1,则输出将为 6,... 阅读更多

C++中的最小下降路径和 II

Arnab Chakraborty
更新于 2020年6月8日 11:04:09

232 次浏览

假设我们有一个网格 arr,这是一个正方形网格,具有非零位移的下落路径是从 arr 的每一行中精确选择一个元素,这样在相邻行中选择的两个元素不会出现在同一列中。我们必须找到具有非零位移的下落路径的最小和。因此,如果输入类似于 arr 类似于 [[1, 2, 3], [4, 5, 6], [7, 8, 9]],则输出将为 13,因为存在不同的下降路径,这些路径类似于 [1, 5, 9]、[1, 5, 7]、[1, 6, 7]、[1,... 阅读更多

C++中在某些步骤后留在同一位置的方法数

Arnab Chakraborty
更新于 2020年6月8日 11:00:39

208 次浏览

假设有一个大小为 arrLen 的数组,并且我们在该数组的索引 0 处有一个指针。在每一步中,我们可以在数组中向左移动 1 个位置,向右移动 1 个位置或停留在同一位置。现在假设我们有两个整数 steps 和 arrLen,我们必须找到指针在 exactly steps 后仍位于索引 0 的方法数。如果答案非常大,则返回它模 10^9 + 7。因此,如果输入类似于 steps = 3,arrLen = 2,则输出将... 阅读更多

C++中每个谜题的有效单词数

Arnab Chakraborty
更新于 2020年6月8日 10:58:15

137 次浏览

假设有一个谜题字符串,如果以下两个条件有效,则一个单词有效:单词包含谜题的第一个字母。对于单词中的每个字母,该字母都在谜题中。假设如果我们考虑一个例子,如果谜题类似于“abcdefg”,则有效单词是“face”、“cabbage”等;但一些无效的单词是“beefed”,因为它没有“a”,而“based”因为它有“s”,而“s”不在谜题中。我们必须找到答案列表,其中 answer[i] 是给定单词列表 words 中相对于... 阅读更多

C++中从先序遍历恢复树

Arnab Chakraborty
更新于 2020年6月8日 10:55:14

418 次浏览

假设有一个二叉树。我们将对二叉树的根运行先序深度优先搜索。在此遍历中的每个节点处,输出将是 D 个破折号(这里 D 是该节点的深度),之后我们显示该节点的值。正如我们所知,如果节点的深度为 D,则其直接子节点的深度为 D+1,根节点的深度为 0。另一件事我们必须记住的是,如果一个节点只有一个子节点,则该子节点保证为... 阅读更多

广告
© . All rights reserved.