738 次浏览
假设我们有 d 个骰子,每个骰子有 f 个面,编号为 1, 2, ..., f。我们需要找到投掷骰子使向上数字之和等于目标值的可能方式的数量(在 fd 个总方式中),模 10^9 + 7。因此,如果输入为 d = 2, f = 6, target = 7,则输出为 6。因此,如果我们用 6 个面的骰子投掷,则有 6 种方法得到和为 6,例如 1 + 6, 2 + 5, 3 + ... 阅读更多
261 次浏览
假设我们有一个二进制数组数据,我们需要找到将数组中所有 1 放在一起(数组中的任何位置)所需的最小交换次数。因此,如果数组为 [1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1],则输出为 3,因为可能的解为 [0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1]。为了解决这个问题,我们将遵循以下步骤:-设置 one := 0, n:= 数据数组的长度创建一个大小为 n 的数组 summ,并用 0 填充它,设置 summ[0] := ... 阅读更多
174 次浏览
String 在 Java 中是不可变类,在 Java 9 中向 String 类添加了两种新方法。这些方法是 chars() 和 codePoints()。这两种方法都返回 IntStream 对象。1) chars():String 类的 chars() 方法可以返回一个 int 流,该流将此序列中的 char 值零扩展。语法 public IntStream chars() 示例 import java.util.stream.IntStream; public class StringCharsMethodTest { public static void main(String args[]) { String str = "Welcome to TutorialsPoint"; IntStream intStream = str.chars(); ... 阅读更多
519 次浏览
假设我们必须实现一个支持以下接口的 SnapshotArray:SnapshotArray(int length) 这将使用给定的长度初始化类似数组的数据结构。最初,每个元素都等于 0。set(index, val) 这将设置给定索引处的元素等于 val。snap() 将拍摄数组的快照并返回 snap_id:我们调用 snap() 的总次数减 1。get(index, snap_id) 这将返回在拍摄具有给定 snap_id 的快照时,给定索引处的 value。因此,如果数组大小为 2,则使用 [0, 5] 设置它,之后... 阅读更多
363 次浏览
假设有两个玩家在一个二叉树上玩回合制游戏。我们有这个二叉树的根和树中的节点数 n。这里 n 是奇数,每个节点都有一个从 1 到 n 的不同值。首先,第一个玩家命名一个值为 x,值为 1
330 次浏览
假设我们有一个整数数组 nums,一个移动操作实际上是选择任何元素并将其减少 1。如果满足 1 或 2,则数组 A 是锯齿形数组:-每个偶数索引元素都大于相邻元素,因此。A[0] > A[1] < A[2] > A[3] < A[4] > ... 等等。每个奇数索引元素都大于相邻元素,因此。A[0] < A[1] > A[2] < A[3] > A[4] < ... 等等。我们需要找到将给定数组 nums 转换为锯齿形数组的最小移动次数。因此,如果... 阅读更多
337 次浏览
假设有 N 个城市,编号从 1 到 N。我们有连接,其中每个连接 [i] 是 [city1, city2, cost],这表示连接 city1 和 city2 的成本。我们需要找到最小成本,以便对于每一对城市,都存在连接路径(可能长度为 1)来连接这两个城市。成本是所用连接成本的总和。如果任务不可能完成,则返回 -1。因此,如果图如下:-则输出为 6,选择任意两个城市将连接所有城市,因此我们选择... 阅读更多
578 次浏览
假设我们有一个有向图,节点标记为 0, 1, ..., n-1。在这个图中,每条边都用红色或蓝色着色,并且可能有自环或平行边。red_edges 中的每个 [i, j] 表示从节点 i 到节点 j 的红色有向边。同样,blue_edges 中的每个 [i, j] 表示从节点 i 到节点 j 的蓝色有向边。我们需要找到一个长度为 n 的数组 answer,其中每个 answer[X] 是从节点 0 到节点 X 的最短路径的长度,使得边的颜色沿... 阅读更多
120 次浏览
假设我们有一个有根二叉树,我们需要返回其最深叶子的最低共同祖先。我们需要记住:-二叉树的节点只有在没有子节点时才是叶节点树的根的深度为 0,当节点的深度为 d 时,其每个子节点的深度为 d+1。集合 S 中节点的最低共同祖先是深度最大的节点 A,使得 S 中的每个节点都在根为...的子树中 阅读更多
138 次浏览
假设我们有二叉树的根;我们需要找到该树的任何子树的最大平均值。因此,如果树如下:-输出将为 6,这是因为,对于节点 5,它将为 (5 + 6 + 1)/ 3 = 4,然后对于节点 6,它将为 6 / 1 = 6,对于节点 1,它将为 1 / 1 = 1,因此最大值为 6。为了解决这个问题,我们将遵循以下步骤:-res := 0定义一个名为 solve() 的方法,这将采用 rootif root 为... 阅读更多