多米诺骨牌

64 阅读1分钟
  1. 数组:可以使用两个数组 t 和 t1 来记录每个骨牌被推倒的时间。t 记录从左到右的推倒时间,t1 记录从右到左的推倒时间。 算法步骤
  2. 初始化数组:创建两个数组 t 和 t1,长度为 n,初始值为 0。
  3. 从左到右遍历:遍历字符串,如果当前骨牌被向右推(R),则将其右边连续的 . 标记为推倒时间递增。
  4. 从右到左遍历:遍历字符串,如果当前骨牌被向左推(L),则将其左边连续的 . 标记为推倒时间递减。
  5. 计算平衡点:遍历数组 t 和 t1,找到 t[i] + t1[i] == 0 的位置,这些位置的骨牌保持竖立。
  6. 输出结果:统计保持竖立的骨牌数量,并输出其位置。

关键点

  • 确保正确处理边界条件,例如字符串的开头和结尾。
  • 注意推倒时间的正负号,确保 t 和 t1 的值能够正确反映推倒的方向和时间。