假设我们有一个包含 n 个元素的数组 A。有 n 个士兵站在一个圆圈上。对于第 i 个士兵,身高为 A[i]。一个侦察部队可以由这样两个相邻的士兵组成,他们的身高差最小。因此,他们中的每一个与另一个相比都将不那么显眼。我们必须找到可以组成侦察部队的士兵对的索引。因此,如果输入类似于 A = [10, 12, 13, 15, 10],则输出将为 (5, 1)。步骤为了解决这个问题,我们将遵循以下步骤 -n := A 的大小 D ... 阅读更多
假设我们有一个包含 N 个元素的数组 A 和另一个二进制字符串 S。假设两位玩家正在玩游戏。他们的编号分别为 0 和 1。有一个变量 x,其初始值为 0。游戏有 N 轮。在第 i 轮中,玩家 S[i] 执行以下操作之一:将 x 替换为 x XOR A[i],否则什么也不做。玩家 0 希望游戏结束时结果为 0,但玩家 1 希望结果为非零。我们必须检查 x 在游戏结束时是否变为 0。因此,如果输入类似于 A = [1, 2];S ... 阅读更多
假设我们有两个字符串 S 和 T。两者都包含小写字母。按此顺序连接 T 和 S 以生成最终字符串。因此,如果输入类似于 S = "ramming";T = "prog",则输出将为 "programming"步骤为了解决这个问题,我们将遵循以下步骤 -res := T 连接 S 返回 res示例让我们看看以下实现以获得更好的理解 -#include using namespace std; string solve(string S, string T){ string res = T + S; return res; } int main(){ string S = "ramming"; string T = "prog"; cout
假设我们有一个包含 N 个坐标点的列表 P,形式为 (xi, yi)。x 和 y 值是前 N 个自然数的排列。对于 1 到 N 的每个 k。我们位于城市 k。我们可以任意多次应用操作。操作:我们移动到另一个城市,该城市具有比我们当前所在的城市更小的 x 坐标和更小的 y 坐标,或者更大的 x 坐标或更大的 y 坐标。我们必须找到我们可以从城市 k 访问的城市数量。因此,如果输入类似于 P = [[1, ... 阅读更多
假设我们有一个包含 n 个不同元素的数组 A,以及另一个数字 x。有 n 块金子。第 i 块金子的重量为 A[i]。我们将一次将这 n 块金子放在称重秤上。但是秤有一个异常缺陷:如果秤上的总重量恰好为 x,它就会爆炸。我们必须检查是否可以按某种顺序将所有 n 块金子放在秤上,而不会在过程中使秤爆炸。如果可以,请找到该顺序。如果不可能,则标记为“IMPOSSIBLE”。因此,如果输入类似于 ... 阅读更多
假设我们有四个数字 n、x、a 和 b。一行中有 n 个学生。其中有两个竞争学生。其中一个位于位置 a,另一个位于位置 b。位置从左到右从 1 到 n 编号。我们希望最大化这两个学生之间的距离。我们可以执行以下操作 x 次:选择两个相邻的学生,然后交换它们。我们必须找到 x 次交换后的最大可能距离。因此,如果输入类似于 n = 5;x = 1;a = 3; ... 阅读更多
假设我们有五个数字,N、A、B、C、D。我们从数字 0 开始,结束于 N。我们可以通过以下操作用一定数量的硬币更改数字 -将数字乘以 2,支付 A 枚硬币将数字乘以 3,支付 B 枚硬币将数字乘以 5,支付 C 枚硬币将数字增加或减少 1,支付 D 枚硬币。我们可以按任何顺序执行这些操作任意次数。我们必须找到到达 N 所需的最少硬币数量。因此,如果输入类似于 N = 11;A = ... 阅读更多
假设我们有一个包含 n 个元素的数组 A。我们想要删除重复元素。我们只想保留每个元素最右边的条目。剩余唯一元素的相对顺序不应更改。因此,如果输入类似于 A = [1, 5, 5, 1, 6, 1],则输出将为 [5, 6, 1]步骤为了解决这个问题,我们将遵循以下步骤 -定义两个大小为 1200 的数组 b 和 vis x := 0 n := A 的大小 对于初始化 i := n - 1,当 i >= 0 时,更新(减少 ... 阅读更多