组合数第四节,对于Java来说就是一个大数训练。
题目
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.math.BigInteger;
class Main {
static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
static PrintWriter pw = new PrintWriter(System.out);
public static void main(String[] args) throws IOException {
String[] s = br.readLine().split(" ");
int a = Integer.parseInt(s[0]);
int b = Integer.parseInt(s[1]);
pw.println(jc(a).divide(jc(b)).divide(jc(a - b)));
pw.flush();
br.close();
}
public static BigInteger jc(int n) {
BigInteger res = new BigInteger("1");
BigInteger i = new BigInteger("2");
while (!i.equals(new BigInteger(String.valueOf(n)))) {
res = res.multiply(i);
i = i.add(new BigInteger("1"));
}
res = res.multiply(new BigInteger(String.valueOf(n)));
return res;
}
}