我正在寻找一种相当快速的算法来计算OEIS序列A002845的项。让我在这里重申它的定义。
让^表示指数运算符。考虑形如2^2^...^2的表达式,其中有n个2并插入所有可能的括号(可能的括号数由Catalan numbers给出)。其中一些表达式将具有相同的值,例如(2^2)^2=2^(2^2)。我们对于给定的n感兴趣的是不同值的数量。
显然,可以通过直接计算这些表达式来找到一个明显的暴力解决方案,但很明显,所需的时间和空间很快就会超出所有合理限制,即使对于相对较小的n也是如此。我对这个问题的多项式时间解决方案感兴趣。
让^表示指数运算符。考虑形如2^2^...^2的表达式,其中有n个2并插入所有可能的括号(可能的括号数由Catalan numbers给出)。其中一些表达式将具有相同的值,例如(2^2)^2=2^(2^2)。我们对于给定的n感兴趣的是不同值的数量。
显然,可以通过直接计算这些表达式来找到一个明显的暴力解决方案,但很明显,所需的时间和空间很快就会超出所有合理限制,即使对于相对较小的n也是如此。我对这个问题的多项式时间解决方案感兴趣。