组合数学

来源:互联网 发布:名片设计排版软件 编辑:程序博客网 时间:2024/05/16 19:34

poj 3219-- 二项式系数奇偶性的判定准则

hdu 2068 ---排列+错排

poj 1496 ---排列



poj 3219-- 二项式系数奇偶性的判定准则

http://blog.csdn.net/famousdt/article/details/7446491

poj 1496 ---排列

http://blog.csdn.net/new_c_yuer/article/details/6433797

hdu 2068 ---排列+错排

#include<cstdio>  #include<cstring>  #include<string.h>#include<stdio.h>#include<algorithm>  #include<iostream>  #include<cstdlib>  #include<vector>  #include<set>#include<cmath>  #include<math.h>using namespace std;  #define inf 0x3f3f3f3f  #define ll __int64#define N 1010ll c[30][30];ll d[20];ll ans[30];ll C(ll n,ll k)    {        if(c[n][k]!=-1) return c[n][k];        if(k==1) return c[n][k]=n;        if(k==0) return c[n][k]=1;        if(n==k) return 1;        if(k > (n>>1)) return c[n][k]=C(n,n-k);        return c[n][k]=(C(n-1,k-1)+C(n-1,k));    }  int main(){memset(c,-1,sizeof(c));//不要忘记初始化ll i,j,k,n;d[1]=0,d[2]=1;for(i=3;i<=16;i++)d[i]=(i-1)*(d[i-1]+d[i-2]);while(cin>>n,n){ll sum=1;for(i=1;i<=n/2;i++){sum+=(C(n,i)*d[i]);}cout<<sum<<endl;}}


0 0
原创粉丝点击