2K+ 次查看
假设我们有两个值 hours 和 minutes。我们必须找到时针和分针之间形成的较小角度。因此,如果输入类似于 hour = 12 minutes = 45,则输出将为 112.5为了解决这个问题,我们将遵循以下步骤:如果 h = 12,则设置 h := 0如果 m = 60,则设置 m := 0hAngle := 0.5 * (60h) + mmAngle := 6mret := |hAngle - mAngle|返回 ret 和 (360 – ret) 的最小值让我们看看以下实现以更好地理解:示例实时演示#include using namespace std; class Solution { public: ... 阅读更多
190 次查看
假设我们有一系列以 [开始,结束] 形式表示的时间间隔,这表示课程的开始和结束时间。我们必须找到我们可以上的最大课程数量,假设我们一次只能上一门课程,并且一门课程的开始必须晚于上一门课程的结束。因此,如果输入类似于 times = [[3, 6], [6, 9], [7, 8], [9, 11]],则输出将为 3,因为我们可以选择课程 [[3, 6], [7, 8], [9, 11]]为了解决这个问题,我们将遵循以下步骤: ... 阅读更多
170 次查看
假设我们有一系列盒子,这里每个条目都有两个值 [开始,结束](开始 < 结束)。如果一个盒子的结束等于另一个盒子的开始,我们可以连接两个盒子。我们必须找到最长盒子链的长度。因此,如果输入类似于 blocks = [ [4, 5], [5, 6], [4, 8], [1, 2], [2, 4] ],则输出将为 4,因为我们可以形成链: [1, 2], [2, 4], [4, 5], [5, 6]为了解决这个问题,我们将遵循以下步骤:如果盒子为空,则返回 0对列表进行排序 ... 阅读更多
141 次查看
假设我们有一系列称为 candies 的数字,并且有人正在与他的/她的朋友玩游戏。在每一轮中,玩家可以移除任何两个具有相同值的连续糖果。而任何无法拾取糖果的人都会输,并且玩家 1 首先开始,我们必须检查玩家 1 是否会获胜。因此,如果输入类似于 nums = [2, 2, 5],则输出将为 True,因为如果玩家 1 选择 2,则另一位玩家无法选择任何糖果。为了解决这个问题,我们将遵循以下步骤:stack := 新栈turns := 0for ... 阅读更多
754 次查看
假设我们有一个字符串 s,其中包含一个带有运算符“and”和“or”的布尔表达式,评估它并返回结果。这里的表达式可能有括号,应该首先对其进行评估。因此,如果输入类似于 s = "T and (F or T)",则输出将为 True为了解决这个问题,我们将遵循以下步骤:stack := 新列表t = 空格分隔的 s 元素列表对于 t 中的每个 v,执行以下操作:如果 v[0] 与“(" 相同,则将 v[从 "(" 的索引到结尾] 与 "T" 相同时将 true 推入栈否则,当找到 ")" 时, ... 阅读更多
828 次查看
假设我们有一系列排序的数字称为 days,我们必须在每一天乘坐公交车。我们必须找到旅行所有这些天所需的最低成本。有 3 种类型的公交车票。1 天通行证 2 美元 7 天通行证 7 美元 30 天通行证 25 美元因此,如果输入类似于 days = [1, 3, 5, 6, 28],则输出将为 9,因为最低成本可以通过在开始时购买 7 天通行证,然后在第 29 天购买 1 天通行证来实现。为了解决 ... 阅读更多
354 次查看
假设我们有两个数字列表 L1 和 L2,每个列表的长度为 n,每个值对其列表都是唯一的,并且值在 1 到 n 的范围内,我们必须找到将 L1 转换为 L2 所需的最小相邻交换次数。因此,如果输入类似于 L1 = [0, 1, 2, 3] L2 = [2, 0, 1, 3],则输出将为 2,因为我们可以交换 1 和 2,L1 将为 [0, 2, 1, 3],然后 0 和 2,L1 将为 [2, 0, 1, 3],这是 ... 阅读更多
132 次查看
假设我们有一系列按时间顺序排列的公司股票价格,并且还有一次出售交易的交易费用。我们必须找到我们可以从多次买卖该股票中获得的最大利润。我们必须先买才能卖。因此,如果输入类似于 prices = [2, 10, 4, 8] fee = 3,则输出将为 6,因为我们可以在 2 处购买并在 10 处出售并产生 3 的费用,因此利润为 5。然后我们在 4 处购买并在 ... 阅读更多
386 次查看
假设我们有一个包含三个不同值(2、1 和 0)的二维矩阵,其中 2 表示敌人,1 表示墙壁,0 表示空单元格。我们必须找到使用一枚炸弹可以杀死的最大敌人数量。炸弹会杀死从种植点开始的同一行和列中的所有敌人,直到撞到墙上。并且我们只能在空白处放置炸弹。因此,如果输入类似于,则输出将为 3,因为我们可以在绿色框中放置炸弹以杀死最多 3 个敌人。ret := 0n ... 阅读更多
153 次查看
假设我们有一个二维二进制矩阵,其中 1 表示炸弹,0 表示空单元格。当炸弹爆炸时,同一行和同一列上的所有空间都会受到损坏。我们必须找到我们可以站立在其中不会受到损坏的空间数量。因此,如果输入类似于 110000000,则输出将为 2,因为右下角单元格和中间右单元格有两个安全空间。要解决此问题,我们将遵循以下步骤:r := 一个大小与矩阵行数相同的列表,并填充 falsec := 一个...