找到 34423 篇文章,关于编程

C++ 中的最小骑士移动

Arnab Chakraborty
更新于 2020年4月29日 16:32:23

729 次浏览

假设我们有一个无限的棋盘,坐标从负无穷到正无穷,并且我们在方格 [0, 0] 上有一个骑士。骑士可以进行 8 种可能的移动,如下所示。每次移动都是沿一个基数方向移动两个方格,然后沿一个正交方向移动一个方格。我们需要找到将骑士移动到方格 [x, y] 所需的最少步数。保证答案存在。所以如果输入像 x = 5 和 y = 5,那么输出将是 4。这将类似于 [0, 0] → [2, 1] ... 阅读更多

C++ 中每个括号对之间的反转子字符串

Arnab Chakraborty
更新于 2020年4月29日 16:28:04

303 次浏览

假设我们有一个字符串 s,它由小写字母和括号组成。我们需要反转每一对匹配括号中的字符串,从最里面的开始。结果不应包含任何括号。所以如果输入像 "(hel(lowo)rld)",那么输出将是 "dlrlowoleh",所以从一开始,它被更改为:"(hel(lowo)rld)" → "(helowolrld)" → “dlrowoleh”。为了解决这个问题,我们将遵循以下步骤 -n := 字符串的大小,创建一个名为 par 的数组,其长度为 n,定义一个栈 stfor i in range 0 to n – 1if s[i] 是 ... 阅读更多

C++ 中到目标颜色的最短距离

Arnab Chakraborty
更新于 2020年4月29日 16:23:16

205 次浏览

假设我们有一个数组 color,其中有三种颜色:1、2 和 3。我们给出了一些查询。每个查询包含两个整数 i 和 c,我们需要找到给定索引 i 和目标颜色 c 之间的最短距离。如果没有解决方案,则返回 -1。所以如果 colors 数组像 [1, 1, 2, 1, 3, 2, 2, 3, 3],并且查询数组像 [[1, 3], [2, 2], [6, 1]],则输出将是 [3, 0, 3]。这是因为索引 1 附近最接近的 3 是 ... 阅读更多

C++ 中的前后拼图

Arnab Chakraborty
更新于 2020年4月29日 16:18:40

105 次浏览

假设我们有一系列短语,生成一系列前后拼图。这里一个短语是一个仅包含小写字母和空格的字符串。开头和结尾位置不会有空格。短语中没有连续的空格。前后拼图是由两个短语合并形成的短语,其中第一个短语的最后一个单词与第二个短语的第一个单词相同。我们需要找到可以通过每个两个短语 phrases[i] 和 phrases[j] 形成的前后拼图 ... 阅读更多

C++ 中的凸多边形

Arnab Chakraborty
更新于 2020年4月29日 16:12:32

2K+ 次浏览

假设我们有一系列点,当按顺序连接时形成一个多边形,我们需要找到这个多边形是否为凸多边形(凸多边形定义)。我们需要记住,至少有 3 个点,最多有 10,000 个点。坐标范围为 -10,000 到 10,000。我们可以假设由给定点形成的多边形始终是一个简单多边形,换句话说,我们确保每个顶点恰好有两个边相交,并且边在其他情况下不相交。所以如果输入像:[[0, 0], [0, 1], ... 阅读更多

Python 中验证 IP 地址

Arnab Chakraborty
更新于 2020年4月29日 16:08:17

2K+ 次浏览

假设我们有一个字符串;我们需要检查给定的输入是有效的 IPv4 地址还是 IPv6 地址,或者两者都不是。IPv4 地址以点分十进制表示法规范表示,它由四个十进制数字组成,每个数字范围从 0 到 255,用点 (“.”) 分隔,例如,192.168.254.1;此外,IPv4 地址中的前导零无效。例如,地址 192.168.254.01 无效。IPv6 地址表示为八组四位十六进制数字,每组代表 16 位。这些组用冒号 (":") 分隔。例如,假设地址是 2001:0db8:85a3:0000:0000:8a2e:0370:7334 是一个有效的地址。 ... 阅读更多

C++ 中环绕字符串中的唯一子字符串

Arnab Chakraborty
更新于 2020年4月29日 16:04:17

192 次浏览

假设我们有字符串 s 是 "abcdefghijklmnopqrstuvwxyz" 的无限环绕字符串,因此 s 的值将如下所示 - "...zabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcd....".现在我们还有另一个字符串 p。我们的工作是找出 p 的多少个唯一的非空子字符串存在于 s 中。特别是,我们的输入是字符串 p,我们需要输出字符串 s 中 p 的不同非空子字符串的数量。所以如果输入像“zab”,输出将是 6。字符串“zab”的 6 个子字符串“z”、“a”、“b”、“za”、“ab”、“zab”在字符串 s 中为了 ... 阅读更多

C++ 中我能否获胜

Arnab Chakraborty
更新于 2020年4月29日 16:01:45

213 次浏览

假设在一个名为“100 场游戏”的游戏中,两位玩家轮流将任何一个整数(1 到 10)添加到运行总和中。第一个使运行总和达到或超过 100 的玩家获胜。那么如果我们更改游戏规则,使得玩家不能重复使用整数会怎样?例如,如果两位玩家轮流从 1..15 的公共数字池中抽取数字,直到他们达到总和 >= 100,而无需替换。所以假设给定一个整数 maxChoosableInteger 和另一个整数 desired total,确定第一个移动的玩家能否强迫获胜,假设双方都以最佳策略玩游戏 ... 阅读更多

C++ 中的 132 模式

Arnab Chakraborty
更新于 2020年4月29日 15:54:23

331 次浏览

假设我们有一个由 n 个整数 a1、a2、...、an 组成的序列,132 模式是一个子序列 ai、aj、ak,使得 i < j < k 且 ai < ak < aj。因此,我们需要设计一个算法,该算法将一个包含 n 个数字的列表作为输入,并检查列表中是否存在 132 模式。例如,如果输入像 [-1, 3, 2, 0],则输出将为 true,因为存在三个模式 [-1, 3, 2]、[-1, 3, 0] 和 [-1, 2, 0]。为了解决这个问题,我们将遵循以下 ... 阅读更多

C++ 中的三元表达式解析器

Arnab Chakraborty
更新于 2020年4月29日 15:19:24

493 次浏览

假设我们有一个字符串,表示任意嵌套的三元表达式,我们需要计算表达式的结果。我们始终可以假设给定的表达式有效,并且仅包含数字 0-9、?、:、T 和 F 这几个字符。(这里 T 和 F 分别代表 True 和 False)。有一些属性 -给定字符串的长度必须小于或等于 10000。每个数字将只包含一位数字。条件表达式从右到左分组。条件始终为 T 或 F。因此,条件永远不会是数字。表达式的结果 ... 阅读更多

广告

© . All rights reserved.