开发者社区> 问答> 正文

遇到一个正三角塔问题,求解答

一个正三角形塔,按以下规则叠n层,最高层(第一层)的一个三角形值为1,接下来对于第 i 层的每个三角形,若是正三角形(尖朝上),则它等于同一层与它相邻的两个三角形值的和(若是没有两个相邻的则值为 1);若是倒三角,则它等于第 i-1层与它相邻的一个三角形的值。问第 n 层第 m 个三角形的值为多少(答案对 10^9+7 取余)?输入整数 n,表示第 n 层;和整数 m,表示第 m 个三角形(1<=n<=10^5, 1<=m<=n*2-1)输出第 n 层从左到右第 m 个三角形的值。

展开
收起
游客4skzfvnrxrzbi 2021-12-23 17:07:40 571 0
1 条回答
写回答
取消 提交回答
  • 这是一个数学问题,将三角塔多写出几层后就可以发现规律。每一行都是两组组合数,正三角与倒三角分别为一组组合数。对于第 k 层,正三角的值依次为 C(k,1) 到 C(k, k)。倒三角的值依次为 C(k-1,1) 到 C(k-1,k-1)。根据题中给出的 m 值,可以判断是正三角还是倒三角,也可以判断是第几个位置。 时间复杂度 与计算组合数的方法有关 空间复杂度 与计算组合数的方法有关 image.png 因此输入:3 3 输出:2

    2021-12-23 18:55:09
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
天合光能-用计算 捉“光的能量” 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载