題目描述
馬上要舉辦新生程序設計競賽了,與以往不同的是,本次比賽以班為單位,為了全面衡量一個班級的整體水平,要求從一個班的m位同學中任選k位同學代表本班參加比賽,問有多少種組合方案。顯然,這個組合數是m!/(k!(m-k)!)。要求編寫函數fact(),實現求一個數的階乘功能,在主函數中調用此函數。
int fact(int n)
{
//函數返回值為n的階乘。
}
輸入
輸入兩個正整數m,k,k<=m<=12。
#include<stdio.h> long fact(long n) { int org=1; for(int i=1;i<=n;i++) org*=i; return org; } int main() { int m,k; scanf("%d%d",&m,&k); printf("%d\n",fact(m)/(fact(k)*fact(m-k))); return 0; }
輸出
輸出一個整數,即組合方案數。
樣例輸入
5 3
樣例輸出
10
