actanble

导航

Algorithm Gossip (20) 阿姆斯壮数

前言

This Series aritcles are all based on the book 《经典算法大全》; 对于该书的所有案例进行一个探究和拓展,并且用python和C++进行实现; 目的是熟悉常用算法过程中的技巧和逻辑拓展。

提出问题

20.Algorithm Gossip: 阿姆斯壮数

说明

就是把 三位数 拆成个 个十百三位, 满足各位上的数字立方和等于这个数。 这不是水仙花数么。。。

基础算法题,略

分析和解释

代码

C

#include <stdio.h>
#include <time.h>
#include <math.h>
int main(void) {
    int a, b, c;
    int input;
    printf("寻找Armstrong数:\n");
    for(input = 100; input <= 999; input++) {
        a = input / 100;
        b = (input % 100) / 10;
        c = input % 10;
        if(a*a*a + b*b*b + c*c*c == input)
            printf("%d ", input);
        }
    printf("\n");
    return 0;
    }

拓展和关联

后记

参考书籍

  • 《经典算法大全》
  • 维基百科

posted on 2017-04-14 09:14  白于空  阅读(141)  评论(0编辑  收藏  举报