您的位置:首页 > 其它

poj 2249 Binomial showdown

2011-08-20 18:40 483 查看
Memory: 164KTime: 0MSLanguage: CResult: Accepted

#include<stdio.h>

__int64 f(int n,int k)

{

__int64 y=1,i,j;

for(i=n-k+1,j=2;i<=n;i++)

{

y*=i;

while(y%j==0&&j<=k)

{

y=y/j;

j++;

}

}

return y;

}

int main()

{

int a,b;

while(scanf("%d%d",&a,&b)==2)

{

if(a==0&&b==0)

break;

if(b>a-b)//少这句就TLE,灰常重要,比如输入2000000000 2000000000,没这句就完了

b=a-b;

printf("%d\n",f(a,b));

}

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: