• HDU 5323 DFS


    DFS

    Time Limit : 5000/2000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other)
    Total Submission(s) : 61   Accepted Submission(s) : 32

    Font: Times New Roman | Verdana | Georgia

    Font Size: ← →

    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
    ......
    

    Author

    zjt
    #include <iostream>
    #include<cstdio>
    using namespace std;
    
    int i,n;
    int a[11];
    
    int main()
    {
        a[0]=1;
        a[1]=1;
        for(i=2;i<=9;i++) a[i]=a[i-1]*i;
    
         n=a[9]*10;
         //printf("%d\n",n);
        for(i=1;i<=n;i++)
          {
            int t=i;
            int sum=0;
            while(t>0)
            {
              sum+=a[t%10];
              t=t/10;
            }
            if (sum==i) printf("%d\n",i);
          }
        return 0;
    }
  • 相关阅读:
    PAT 1017 Queueing at Bank
    一句有意思的代码
    PAT 1031 Hello World for U
    PAT 1024 Palindromic Number
    PAT 1032 Sharing
    各显神通
    ZJU PAT 1023
    静夜,乱思
    PAT 1024 Palindromic Number
    虚函数表
  • 原文地址:https://www.cnblogs.com/stepping/p/5648399.html
Copyright © 2020-2023  润新知