如果数字不能重复,求用数字1,3,5,7,9组成的,所有大于10000的不同的数的和。
也就是说,更换数字1,3,5,7,9的位置(个位,十位,百位,千位,万位)组成的所有不同数的总合。
答案:6666600 解法(若理解错了或做错了,请高手指正): 这样的5位数字个数总数 = 5!= 120 每个数码(digit)在每个位置出现次数 = 4!= 24 各个位置上的数码总和 = (1+3+5+7+9)*24 = 600 故所求总和 = 600*(10000+1000+100+10+1) = 6666600 |
120个5位数的平均值 = [13579(最小的)+97531(最大的)]/2 = 55555 故所求总和 = 55555*120 = 6666600 在两种算法中,都用到了每个digit在每个位置等几率出现的概念。 |
妙!这个方法好。 但是,用这种方法就要求这些所有的120个数的关系为等差数列,怎么能证明他们为等差数列呢? |
这120个数并不成等差数列。比如: 最小13579,次小13597,差18; 次小13597,第三小13759,差162; ....... 我试着另类“证明”(其实只是“说明”而已),用120*55555(平均值)=6666600来算 是对的: 从个位数看,1、3、5、7、9在0与10区间对称分布,以5为对称中心; 从十位数看,10、30、50、70、90在0与100区间对称分布,以50为对称中心; 从百位数看,100、300、500、700、900在0与1000区间对称分布,以500为对称中心; 从千位数看,1000、3000、5000、7000、9000在0与10000区间对称分布,以5000为 对称中心; 从万位数看,10000、30000、50000、70000、90000在0与100000区间对称分布,以 50000为对称中心; 故,符合题意的数的集合中,所有的120个元素在0与111110区间成对称分布。也即, 对任何一个元素,都可以在区间内找到它的镜像反映,比如,35179的镜像是75931, 因为(找镜像就是从个、十、百、千、万位数找对应的镜像,再相加): 35179=30000+5000+100+70+9 它的镜像=70000+5000+900+30+1=75931 对称中心是50000+5000+500+50+5=55555,也即0与111110的中值。 此中值也就是所有120个元素的平均值,可由取最小的和最大的元素的平均值求得: (13579+97531)/2=55555 所以这120个元素的总和是: 120*55555=6666600 |
欢迎光临 珍珠湾ART (http://66.160.158.134/) | Powered by Discuz! X3 |