業績:
コード:
public class Group {
public static void main(String[] args) {
System.out.print("请输入n:");
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
System.out.print("请输入m:");
int m = sc.nextInt();
if ((n >= m) && (n<=20)) {
zuhe(n, m);
System.out.println(zuhe(n, m));
}
}
private static int zuhe(int n, int m) {
if ((n == m) || (n == 0) || (m == 0)) {
return 1;
} else
return zuhe(n - 1, m) + zuhe(n - 1, m - 1);
}
}
概念は:C(N、M)の数との組み合わせを用いて表し、mは数Nを取り込むプログラムの数を表します。
コンビネーションの式番号:
C(n、m)は= C(N、NM)
C(n、m)は= C(N-1、M)+ C(N-1、M-1)
だから、再帰関数は、それに書き込むために、この式に従います。