假设我们有两个小写字符串 s 和 t。现在考虑一个操作,我们将 s 中所有出现的字符替换为另一个字符。如果我们可以执行此操作任意次数,我们必须检查 s 是否可以转换为 t。因此,如果输入类似于 s = "eye" t = "pip",则输出将为 True,因为我们可以将 "e" 替换为 "p",然后将 "y" 替换为 "i"。要解决此问题,我们将遵循以下步骤:定义一个映射 m1 和另一个映射 m2n := s 的大小for 初始化 i := 0,... 阅读更多
假设我们有一个字符串 s 和一个正则表达式模式。我们必须检查给定的模式是否与给定的字符串匹配。在正则表达式中,有一些规则:.(句点)匹配任何单个字符*(星号)匹配前一个元素的零个或多个。因此,如果输入类似于 pattern = "h.l*o" s = "hello",则输出将为 True,因为我们有 ra,然后是单个字符要解决此问题,我们将遵循以下步骤:n := s 的大小m := p 的大小定义一个函数 dp()。这将采用 i,... 阅读更多
假设我们有一个二维二进制矩阵,我们必须找到所有 1 的子矩阵的总数。因此,如果输入类似于110110001则输出将为 10,因为有五个 1 x 1 矩阵,两个 2 x 1 矩阵。两个 1 x 2 矩阵。还有一个 2 x 2 矩阵。要解决此问题,我们将遵循以下步骤:定义一个函数 getAns(),这将采用一个数组 a,ret := 0n := a 的大小定义一个大小为 n 的数组 v定义一个堆栈 stfor 初始化 i := 0,当 i < a 的大小,更新(将 i 增加... 阅读更多
在这个问题中,我们给定一个数字 n,它表示位于圆形边缘的 n 个盒子。并且有 Q 个查询,每个查询包含两个整数 a 和 b。我们的任务是创建一个程序来解决查询,以检查是否可以将盒子连接成圆圈。问题描述:要解决每个查询,我们需要检查用杆连接盒子 a 和盒子 b 的可能性,这样就不会干扰上次查询中的盒子交集。我们需要打印可能或... 阅读更多