1到1亿之间所有自然数的数字(如18559为1+8+5+5+9)相加,其和会是多少呢?
解1:
分析:两数相加如果有进位,则两数数字之和大于和的各位数字之和。
例如:23+46=69,2+3+4+6=6+9;而97+8=105,9+7+8>1+0+5。
所以,要把1——100000000这样分组:(0,99999999),(1,99999998),(2,99999997)(3,99999996)……(49999999,50000000),共50000000组,还剩下数字100000000。
这样每一组的数字之和都是:9*8=72
总和为:72*50000000+1=3600000001(36亿零1)
解2:
从
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1
……………………
到
9 9 9 9 9 9 9 9
得到一个8列、1亿行的数组
看其中任何一列:0-9都出现1千万次
解法如下:(0+1+2+3+4+5+6+7+8+9)*1千万*8列+1(1亿的)=45*8*1千万+1=36亿零1
分享到:
相关推荐
C语言程序设计-求一个n位自然数的各位数字的积;(n 是小于10的自然数).c
输入一个自然数n,求1~n之间的所有自然数之和。
输出自然数1到n的所有不重复的排列,即n的全排列。
一本书的页码从自然数1 开始顺序编码直到自然数n。书的页码按照通常的习惯编排,每个页码都不含多余的前导数字0。例如,第6 页用数字6 表示,而不是06 或006 等。数字计数问题要求对给定书的总页码n,计算出书的全部...
c++ 实现一个自然数表示成几个自然数的和,输出所有自然数和的表示方式
matlab求1-N自然数累加和。子函数形式,直接调用可在命令窗口输出结果。 文档里面也有注释,方便学习。有不懂的同仁可联系.
对任意给定的一个自然数n,将分母小于等于n的不可约的真分数按升序排列,并且在第一个分数之前加上0/1,在最后一个分数之后加上1/1,这个序列称为n级法雷数列,以Fn表示。如F5为:0/1,1/5, 1/4, 1/3, 2/5, 1/2, 3/5,...
一本书的页码从自然数1 开始顺序编码直到自然数n。书的页码按照通常的习惯编排,每个页码都不含多余的前导数字0。例如,第6 页用数字6 表示,而不是06 或006 等。数字计数问题要求对给定书的总页码n,计算出书的全部...
一本书的页码从自然数1开始顺序编码直到自然数n。书的页码按照通常的习惯编排,每个页码都不含多余的前导数字0。例如第6页用6表示而不是06或006。数字统计问题要求对给定书的总页码,计算出书的全部页码中分别用到...
用JAVA编写求自然数n到m的和,经过调试没有错误!
计算并输出n(包括n)以内能被3或5整除的所有自然数之和的简单C++程序
C语言程序设计-计算从1开始到n的自然数中偶数的平方的和,n由键盘输入,并在main()函数中输出。(n是偶数).c
写一个程序,对于给定的一个自然数N(1),和M个互不相同的十进制数字X1, X2,…,XM (M>=1), 找出N的一个最小的正倍数,使得该倍数中仅包含数字X1,X2,…,XM。 【输入形式】 输入文件为当前目录下的...
求自然数1-10的和。累加过程是一个循环过程,可以用while语句和do...while语句实现。
设n是一任意自然数。若将n的各位数字反向排列所得自然数n1与n相等,则称n为一回文数。例如,若n=1234321,则称n为一回文数;但若n=1234567,则n不是回文数。
2.对于任何一个大于1的自然数n,总可以拆分成若干个小于n的自然数之和:n=n1+n2+…+nk,其中1≤n1 ≤ n2 ≤ … ≤ nk,k≥1。自然数n的这种表示称为自然数拆分问题。试求自然数n的所有不同的拆分。
编写一个程序。要求将一个自然数拆分成任意个自然数相加,要求这几个数的乘积是最大的 自然数n拆分成m个自然数,要求这几个数的乘积是最大的,必为n/m及其临近数.
题目 1:给定一个自然数 N,0≤ N ≤ 4999和 M 各不同的十进制数字 X1,X2,……,XM, 找出由这些数字所构成的正整数中 N 的倍数最小的正整数,设该正整数不超过 2 32-1。 输入要求: 输入的第一行有两个整数,分别...