为了简化公式写法,定义下面的一些符号:
1至10^n-1 (即自然数n个9)的和记为Sn,容易推导出Sn=45*n*10^(n-1);
n位数字An=∑ai*10^(i-1)的各位数字和记为sn,ai为An的第i位的数字,i从1至n;
An去掉最高位后的自然数记为A[n-1]=∑ai*10^(i-1),i从1至n-1,
A[n-1]各位数字和记为s[k-1],也就是[]内表示下标;
k位数Ak的各位数字和通式为:
sk=(1+2+...+k-1)*10^(k-1)+Ak*S[k-1]+ak*(A[k-1]+1)+s[k-1]
=ak(ak-1)/2*10^(k-1)+ak*45*(k-1)*10^(k-2)+ak*(A[k-1]+1)+s[k-1]
按上述公式分别写出1至4位数的情况如下:
1、一位数A1=a1
S1=1+2+...+9=45*1*10^(1-1)=45
s1=1+2+...+a1=a1(a1+1)/2
2、两位数A2=a2*10+a1
S2=45*2*10^(2-1)=900
s2=a2(a2-1)/2*10+S1*a2+a2(a1+1)+s1
=a2(a2-1)/2*10+45*a2+a2(a1+1)+a1(a1+1)/2
在此求出1至14的所有数字和为:
1*(1-1)/2*10+45*1+1*(4+1)+4*(4+1)/2
=45+5+10
=60
3、三位数A3=a3*100+A2=a3*100+a2*10+a1
S3=45*3*10^(3-1)=13500
s3=a3(a3-1)/2*100+a3*S2+a3*(A2+1)+s2
=a3(a3-1)/2*100+900*a3+a3(A2+1)+45*a2+a2(a2-1)/2*10+a2(a1+1)+a1(a1+1)/2
4、四位数A4=a4*10^3+A3=a4*10^3+a3*10^2+a2*10+a1
S4=45*4*1000=180000
s4=a4*(a4-1)/2*1000+a4*S3+a4*(A3+1)+s3
a4*(a4-1)/2*1000+a4*13500+a4*(A3+1)+s3
2004的数字和为:
2*(2-1)/2*1000+13500*2+4*(4+1)+4(4+1)/2=28020
28020-60=27960