HDU:P2212-DFS[水题]

HDU:P2212-DFS[水题]

题目

题目链接

思路

这个题目…一言难尽,照着题目说的敲一遍就能知道,其实,一共就四个数字。唯一要注意的就是0!=1。

代码

#include <stdio.h>

int fac[11];

int main(void)
{
    long long sum;
    fac[0] = 1;
    fac[1] = 1;
    for(int i = 2; i < 11; ++i) {
        fac[i] = i*fac[i-1];
    }
    for(long  i = 1; i < 2147483648; ++i) {
        long t = i;
        sum = 0;
        while(t != 0) {
            sum += fac[t%10];
            t /= 10;
        }
        if(sum == i)
            printf("%d\n", i);
    }
    return 0;
}

二次编码最后提交的结果

#include <stdio.h>

int main(void)
{
    printf("1\n2\n145\n40585\n");
    return 0;
}
posted @ 2021-06-06 17:27  JACK121385  阅读(13)  评论(0)    收藏  举报