• HDOJ(HDU) 2212 DFS(阶乘相关、)


    Problem Description
    A DFS(digital factorial sum) number is found by summing the factorial of every digit of a positive integer.

    For example ,consider the positive integer 145 = 1!+4!+5!, so it’s a DFS number.

    Now you should find out all the DFS numbers in the range of int( [1, 2147483647] ).

    There is no input for this problem. Output all the DFS numbers in increasing order. The first 2 lines of the output are shown below.

    Input
    no input

    Output
    Output all the DFS number in increasing order.

    Sample Output
    1
    2
    ……

    其实你输出后就会知道。。输出就只有4个数,你可以直接输出。
    在这里,我是写了过程的。

    public class Main{
        static int fact[] = new int[10];
        public static void main(String[] args) {
            dabiao();
            //9!*7 7位数-比9999999小,后面的数字更不用说了,肯定小。
            for(int i=1;i<=9999999;i++){
                if(isTrue(i)){
                    System.out.println(i);
                }
            }
        }
    
        private static void dabiao() {
            //求阶乘的,注意:0的阶乘为1
            fact[0]=1;
            for(int i=1;i<fact.length;i++){
                fact[i]=1;
                for(int j=1;j<=i;j++){
                    fact[i]=fact[i]*j;
                }
            }
        }
    
    
        //判断是不是相等
        private static boolean isTrue(int i) {
            if(i==1||i==2){
                return true;
            }
            int sum=0;
            int n=i;
            while(n!=0){
                int k=n%10;
                sum+=fact[k];
                n=n/10;
            }
            if(sum==i){
                return true;
            }
            return false;
        }
    }
    
  • 相关阅读:
    HTML元素解释
    Java命名规范
    HDU 1058 Humble Numbers(DP,数)
    HDU 2845 Beans(DP,最大不连续和)
    HDU 2830 Matrix Swapping II (DP,最大全1矩阵)
    HDU 2870 Largest Submatrix(DP)
    HDU 1421 搬寝室(DP)
    HDU 2844 Coins (组合背包)
    HDU 2577 How to Type(模拟)
    HDU 2159 FATE(二维完全背包)
  • 原文地址:https://www.cnblogs.com/webmen/p/5739214.html
Copyright © 2020-2023  润新知