自学内容网 自学内容网

2048.神、上帝以及老天爷

典型的错排问题

题解:计算所有人错排的种类数/阶乘

错排种类数:

1——0

2——1

3——2 第一个人两种选择假设1拿了2的,那么2只能拿3,因为2如果拿1,3就会拿3就不会拿错

4——9 3×(1+2)

5——44

f(n)=(n-1)*[f(n-1)+f(n-2)]

 

import java.util.*;

public class Main {
    public static void main(String[] args)  {
        Scanner scanner=new Scanner(System.in);
        int n= scanner.nextInt();
        for (int i=0;i<n;i++){
            int num= scanner.nextInt();
            System.out.println(String.format("%.2f",(Calculate(num)/Factorial(num))));
        }
    }
    static double Calculate(int num){
        if (num==1){
            return 0;
        } else if (num==2) {
            return 1;
        }else {
            return (num-1)*(Calculate(num-1)+Calculate(num-2));
        }
    }
    static int Factorial(int num){
        if (num==1){
            return 1;
        }else {
            return Factorial(num-1)*num;
        }
    }
}


原文地址:https://blog.csdn.net/qq_56691739/article/details/136714077

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!