SP27094 FN16CEIL - Ceiling Function

题目描述

Advanced Ceiling Manufacturers (ACM) 正在研究其新系列的抗压天花板 (ICPCs) 的性能。这种天花板由 $n$ 层材料组成,每层的抗压强度用一个正整数来表示,且各不相同。ACM 想将每层的抗压强度值按次序存入一个二叉搜索树中,从而分析树形结构是否与天花板的整体质量有关。 具体地,ACM 将按从上到下的顺序,将每层的抗压强度值插入二叉搜索树中。插入规则如下: - 如果树为空,那么直接将该值作为树的根节点。 - 如果树不为空,将该值与根节点进行比较。如果该值较小,插入到根节点的左子树;否则,插入到右子树。 ACM 手头有一些天花板原型,它们希望通过测试不同树形的数量来分析这些原型的特性。具体地,要将生成相同树形的所有天花板原型分组并一同分析。 你的任务是,给定一组天花板原型,确定它们能形成多少种不同的树形结构。

输入格式

输入包含多个测试用例,直到文件末尾。每个测试用例格式如下: 第一行包含两个整数 $n$ 和 $k$,其中 $n$ 是要分析的天花板原型数量($1 \le n \le 50$),$k$ 是每个原型的层数($1 \le k \le 20$)。 接下来的 $n$ 行每行包含 $k$ 个不同的整数(范围在 $1$ 到 $10^6$ 之间),代表每个天花板原型从上到下的层的抗压强度值。

输出格式

对于每个测试用例,输出能形成的不同树形数量。 **本翻译由 AI 自动生成**