You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Falling Squares(掉落的方块)问题错误实现逻辑排查

逻辑疏漏点

  • 只判断当前方块和前一个掉落方块的重叠,完全没有考虑更早落地的所有方块。你只存储了上一个方块的坐标和边长,没有留存所有已落地方块的位置、高度信息,只要当前方块和更早的方块重叠但和上一个不重叠,逻辑就会完全失效。
  • 重叠判定规则错误。两个X轴区间存在重叠的正确条件是 当前方块左边界 < 已有方块右边界 且 当前方块右边界 > 已有方块左边界,你只判断了当前左边界 < 前一个方块的右边界,如果当前方块完全处于前一个方块的左侧,也会被误判为重叠。
  • 重叠后的高度计算逻辑错误。就算当前方块和已有方块重叠,也不是直接叠加全局最大高度,而是要先找到当前方块覆盖的所有区间里的最大高度,再加上自身边长才是当前方块的落地高度。如果全局最大高度对应的方块不在当前方块的覆盖范围内,是不能叠加的。
  • 没有存储每个方块落地后的实际高度。你只更新了前一个方块的边长,没有记录每个方块落地后的真实高度、左右边界,后续遍历根本无法正确计算重叠区域的最大高度。

举个简单的反例:输入positions = [[0,1],[2,2],[1,1]],正确输出是[1,2,2],你的代码运行后输出是[1,2,3],结果完全不符合预期。

内容的提问来源于stack exchange,提问作者Jerry

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 12:45:05