題目:求解兩個組合數的商。
分析:數論。本題可以利用素數分解然後消去相同的因數求機和商。
這裡直接一邊乘分母一邊除分子的方法計算(因結果不會很大)。
說明:注意浮點數的運算╮(╯▽╰)╭。
#include <cstdio>
int main()
{
int p, q, r, s;
while (~scanf("%d%d%d%d",&p,&q,&r,&s)) {
if (p-q < q) q = p-q;
if (r-s < s) s = r-s;
double sum = 1.0;
for (int i = 1; i <= q || i <= s; ++ i) {
if (i <= q) sum = sum*(p-q+i)/i;
if (i <= s) sum = sum*i/(r-s+i);
}
printf("%.5lf\n",sum);
}
return 0;
}