SPOJ - TRNGL 卡特兰数

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/monochrome00/article/details/79970386

题目链接<https://vjudge.net/problem/SPOJ-TRNGL>

题意:

给一个n边的凸多边形,用n-3条不相交的线将图形分为n-2个三角形,问有多少种分法。

题解:

卡特兰数。


#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
LL dp[1005];
int main(){
    dp[2]=dp[3]=1;
    for(LL i=4;i<=1000;i++){
        for(LL j=2,k=i-1;j<i;j++,k--){
            dp[i]=(dp[i]+dp[j]*dp[k])%100007;
        }
    }
    LL n,x;
    scanf("%lld",&n);
    while(n--){
        scanf("%lld",&x);
        printf("%lld\n",dp[x]);
    }
}

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试