1142: 简单的事情

来源:互联网 发布:招商银行java面试 编辑:程序博客网 时间:2024/05/21 10:21

题目

Description

数学天才fans曾经说过一句话:组合数的计算是一件非常简单的事情。组合数的计算真的是一件非常简单的事情吗?请你自己去尝试一下吧!

Input

输入中的一些整数对n,m(m≤n≤20)

Output

输出其组合数。

Sample Input

5 2
18 13
Sample Output

10
8568


代码块

import java.math.BigInteger;import java.util.Scanner;public class Main {    public static void main(String[] args) {        Scanner cn = new Scanner(System.in);        while(cn.hasNext()){            int m = cn.nextInt();            int n = cn.nextInt();            BigInteger sum = fictorial(m).divide(fictorial(n).multiply(fictorial(m-n)));//进行组合数方式计算            System.out.println(sum);        }    }    public static BigInteger fictorial(int n){//递归计算阶乘        return n<=1? new BigInteger(Integer.toString(1)):fictorial(n-1).multiply(new BigInteger(Integer.toString(n)));    }}