假设有一个字符串 S。S 中的所有字母都小写。然后,我们可以进行任意次数的移动。在这里,在每次移动中,我们选择前 K 个字母中的一个,将其移除,并将其放在字符串的末尾。我们必须找到在任意次数的移动后我们可以拥有的字典序最小的字符串。因此,如果输入类似于“cabaa”和 K = 3,则输出将为“aaabc”。为了解决这个问题,我们将遵循以下步骤:如果 K > 1,则:对数组 S 进行排序返回 Sret := Sn := 字符串的大小对于初始化… 阅读更多
假设我们有 K 个鸡蛋,并且我们有一座从 1 到 N 的 N 层楼的建筑。现在每个鸡蛋的功能都是相同的,如果一个鸡蛋破了,我们就不能再把它掉了。存在一个介于 0 和 N 之间的楼层 F,使得任何在高于 F 的楼层掉落的鸡蛋都会破裂,而任何在 F 或低于 F 的楼层掉落的鸡蛋都不会破裂。在每次移动中,我们可以拿一个鸡蛋并从任何楼层 X 掉落它。X 的范围是 1 到 N。我们的目标是确定地知道… 阅读更多
假设我们有一个数组 A。我们必须找到 A 的最短、非空、连续子数组的长度,其和至少为 K。如果没有这样的子数组,则返回 -1。因此,如果输入类似于 [5, 3, -2, 2, 1] 和 k = 6,则输出将为 2,因为我们可以看到 (5+3) >= 6。为了解决这个问题,我们将遵循以下步骤:n := A 的大小ans := n + 1, j := 0, sum := 0定义一个双端队列 dq对于初始化 i := 0,当 i < n 时,更新(将 i 增加 1),… 阅读更多