【欧拉计划】034 数字阶乘和

题目:

在这里插入图片描述

难点:

如何判断枚举上界;
如何判断各位阶乘和。
在这里插入图片描述
在这里插入图片描述

#include <stdio.h>

int main() {
    int n = 1;
    for (int i = 1; i <= 9; i++) {
        n *= i;
    }
    printf("%d\n", n * 7);
    return 0;
}

枚举上界:2540160

解题答案:

#include <stdio.h>
#define MAX_N 2540160 //枚举上界

int sum = 0;
int jiecheng_n[11] = {1};

void jiecheng() {  //编程技巧: 打表,确定阶乘表。
    for (int i = 1; i < 10; i++) {
        jiecheng_n[i] = jiecheng_n[i - 1] * i;
    }
    return ;
}

int shuwei_jiecheng(int n) {
    int sum_n = 0, x = n;
    while (x) {
        sum_n += jiecheng_n[x % 10];
        x /= 10;
    }
    return sum_n == n;
}

int main() {
    jiecheng();
    for (int i = 10; i <= MAX_N; i++) {
        if (!shuwei_jiecheng(i)) continue;
        sum += i;
    }
    printf("%d\n", sum);
    return 0;
}

相关推荐

  1. 数论

    2024-06-13 16:20:02       39 阅读
  2. 数码#洛谷

    2024-06-13 16:20:02       81 阅读
  3. 【算法基础 & 数学函数

    2024-06-13 16:20:02       52 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-13 16:20:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-13 16:20:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-06-13 16:20:02       87 阅读
  4. Python语言-面向对象

    2024-06-13 16:20:02       96 阅读

热门阅读

  1. linux 环境下动态链接库试验

    2024-06-13 16:20:02       30 阅读
  2. 如何通过Python爬虫提升电商数据分析效率

    2024-06-13 16:20:02       35 阅读
  3. 新需求:实现一个自动运维部署工具

    2024-06-13 16:20:02       27 阅读
  4. 编程里len是什么意思:深度解析与应用探讨

    2024-06-13 16:20:02       27 阅读
  5. 【DPDK学习路径】五、线程创建及核心绑定

    2024-06-13 16:20:02       30 阅读
  6. 浅拷贝与深拷贝全面解析及实战

    2024-06-13 16:20:02       28 阅读
  7. js点击切换的轮播图

    2024-06-13 16:20:02       31 阅读
  8. 使用 ftrace 进行内核跟踪

    2024-06-13 16:20:02       45 阅读
  9. 使用canvas制作一个无人机旋转特效

    2024-06-13 16:20:02       26 阅读
  10. Linux使用过程中的一些技巧

    2024-06-13 16:20:02       22 阅读