首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

简略计算求组合数 Binomial Showdown

2013-01-26 
简单计算求组合数Binomial Showdown#include stdio.hint main(){double n,kwhile(scanf(%lf%lf,&n,&k

简单计算求组合数 Binomial Showdown

#include <stdio.h>int main(){    double n,k;    while(scanf("%lf%lf",&n,&k)==2)    {        if(n==0&&k==0) break;        double ans=1;        if(2*k>n) k=n-k;//注意优化        while(k>=1)//分子是n*n-1*...*n-k+1 共k项,分母是k*k-1*...*1共k项,所以复杂度取决于k的大小        {            ans*=n/k;            n--,k--;        }        printf("%.0lf\n",ans);    }    return 0;}

热点排行