UVA 991 Safe Salutations

来源:互联网 发布:fda医疗器械数据库 编辑:程序博客网 时间:2024/05/16 23:49

题意:连接圆上的n对点,要求不要相交,Catalan数的应用,试想一下,如果任选一条的

如果使得线的一边的点数是奇数的话,那么我们显然是无法成功的,所以我们选择一条线后,线的两边都要是偶数个,例如n=4的时候,我们可以选择(0对,3对),(1对,2对),(2对,1对),(3对,0对)

#include <iostream>#include <cstdio>#include <cstdio>#include <cmath>using namespace std;const int MAXN = 20;int f[MAXN];int main(){    f[0] = f[1] = 1;    f[2] = 2;    for (int i = 3; i <= 10; i++)        for (int j = 0; j < i; j++)            f[i] += f[j]*f[i-j-1];        int n,flag=0;    while (scanf("%d",&n) != EOF){        if (flag)            printf("\n");        else flag = 1;        printf("%d\n",f[n]);    }    return 0;}



原创粉丝点击