99999各个数位上数字之和为45,从1到100000的全部整数的各个数位上的数字之和再相加结果是多少?

99999各个数位上数字之和为45,从1到100000的全部整数的各个数位上的数字之和再相加结果是多少?
我的算法是:
50000和100000的和为6
10000和90000数位数字之和为10,…到40000和60000,总共有10*4
1000和99000数位数字之和为19,……到49000和51000,总共有19*(49-4)
100和99900数位数字之和为28,200和99800……到49900和50100,总共28*(499-49)
10和99990数位数字之和为37,20和99980……到49990和50010,总共37*(4999-499)
1和99999数位数字之和是46,2和99998,……到49999和50001,总共有46*(49999-4999)
所以结果=46*45000+37*4500+28*450+19*45+10*4+6=2250001
改了很多次才改到最后的结果,并且确定这为标准答案,不过不知道还有没有更简便的方法,麻烦各位大虾多多指教,3Q!
打卡钟 1年前 已收到6个回答 举报

wangdaqun2001 幼苗

共回答了17个问题采纳率:88.2% 举报

比较简便的算法:
考虑从00000到99999这100000个数
这100000个数,各位上共使用了 100000 * 5 = 500000 个数码,
其中数字0到9出现的次数均等,即都出现了 500000/10 = 50000 次.
因此从00000到99999,所有数位上的数字之和
= (0+1+2+3+……+9)× 50000
= 45× 50000
= 2250000
则从00000到100000,须再加上100000的各个数字,因此总的数字和
= 2250000 + 1 + 0*5
= 2250001

1年前

10

只手摘星 花朵

共回答了1745个问题 举报

对于一位数,从1到9各出现一次;两位数,各出现20次;三位数30次;四位数40次;五位数50次;所以从1到99999,这些数字各出现1+20+30+40+50=141次。从1到100000的全部整数的各个数位上的数字之和再相加结果是(1+2+3+.....+7+8+9)X141+1=45X141+1=6345+1=6346。

1年前

2

北府 幼苗

共回答了55个问题 举报

19

1年前

2

Kemjady_qq 幼苗

共回答了2个问题 举报

(10+99990)*9999*9/2+(1+9)*9/2*10000=4.5*10^9
哎,十进制坑爹啊。。。不是太确定啊。。。要是不对的话希望楼主别骂我

1年前

1

tutucc 幼苗

共回答了1个问题 举报

这应该是最简便的

1年前

1

钰树临风mg 幼苗

共回答了18个问题采纳率:88.9% 举报

在前面加一个0,然后是0和99999一起,1和99998这样类似的加下去,就一共有50000组,每组加起来都等于45,所以最后答案是45*50000再加个1 等于2250001

1年前

0
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 21 q. 0.015 s. - webmaster@yulucn.com