您的位置:首页 > 编程语言 > Java开发

1142: 简单的事情

2017-05-21 19:12 204 查看

题目

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)));
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息