dede门户网站模板下载,青岛最新消息,项目宣传网站模板,wordpress网站生成app数论中#xff0c;若一个正整数除了本身之外所有因子之和比此数自身小#xff0c;则称此数为亏数。亏数#xff08;Deficient number#xff09;也称为缺数#xff0c;参见百度百科_亏数#xff0c;或参见维基百科的Deficient number。亏数在OEIS中的数列号为A005100。 问… 数论中若一个正整数除了本身之外所有因子之和比此数自身小则称此数为亏数。亏数Deficient number也称为缺数参见百度百科_亏数或参见维基百科的Deficient number。亏数在OEIS中的数列号为A005100。 问题描述输入nn≤40000000计算输出≤n的所有亏数每个数之间用空格隔开输出在一行里。 问题分析可以使用筛选法原理计算各个数的因子之和然后再判定输出。 程序说明数组sum[]中存放除了自身之外的因子之和例如sum[i]中存放除了i以外的i的因子之和。 AC的C语言程序如下 /* I00037 亏数Deficient number */#include stdio.h
#include memory.h#define MAXN 40000000int sum[MAXN1];void maketable(int n)
{memset(sum, 0, sizeof(sum));sum[1] 0;int i2, j;while(in) {sum[i];j i i; /* jki, k1 */while(j n) {sum[j] i;j i;}i;}
}int main(void)
{int n, flag, i;scanf(%d, n);maketable(n);flag 0;for(i1; in; i)if(sum[i] i) {if(flag)printf( );flag 1;printf(%d, i);}printf(\n);return 0;
} 运行实例 99 1 2 3 4 5 7 8 9 10 11 13 14 15 16 17 19 21 22 23 25 26 27 29 31 32 33 34 35 37 38 39 41 43 44 45 46 47 49 50 51 52 53 55 57 58 59 61 62 63 64 65 67 68 69 71 73 74 75 76 77 79 81 82 83 85 86 87 89 91 92 93 94 95 97 98 99 转载于:https://www.cnblogs.com/tigerisland/p/7564323.html