首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

一到1亿间所有自然数的各位数字的和

2012-08-29 
1到1亿间所有自然数的各位数字的和1到1亿之间所有自然数的数字(如18559为1+8+5+5+9)相加,其和会是多少呢?

1到1亿间所有自然数的各位数字的和
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 1 楼 yueyemaitian 2012-02-27   面百度就遇到了这道题,可惜当时没想出第一种办法,只想出了第二种

热点排行