Bootstrap

【数据结构与算法】之深入解析“金字塔转换矩阵”的求解思路与算法示例

一、题目要求

  • 你正在把积木堆成金字塔,每个块都有一个颜色,用一个字母表示,每一行的块比它下面的行少一个块,并且居中。
  • 为了使金字塔美观,只有特定的三角形图案是允许的。一个三角形的图案由两个块和叠在上面的单个块组成。模式是以三个字母字符串的列表形式 allowed 给出的,其中模式的前两个字符分别表示左右底部块,第三个字符表示顶部块。
  • 例如,“ABC” 表示一个三角形图案,其中一个 “C” 块堆叠在一个 ‘A’ 块(左)和一个 ‘B’ 块(右)之上。请注意,这与 “BAC” 不同,“B” 在左下角,“A” 在右下角。
  • 你从底部的一排积木 bottom 开始,作为一个单一的字符串,你必须使用作为金字塔的底部。
  • 在给定 bottom 和 allowed 的情况下,如果你能一直构建到金字塔顶部,使金字塔中的每个三角形图案都是允许的,则返回 true ,否则返回 false。
  • 示例 1:

;